Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add tests/infrared/17.1 #440

Merged
merged 4 commits into from
Sep 11, 2023
Merged

Add tests/infrared/17.1 #440

merged 4 commits into from
Sep 11, 2023

Conversation

leifmadsen
Copy link
Member

Add a new tests/infrared/17.1/ configuration. Add extra hosts file entry configuration to make it easier to point at an existing OpenShift deployment (primarily used with stf-verify-containers).

@leifmadsen
Copy link
Member Author

Pretty much a copy/paste of the 17.0 configuration, updating infrared-openstack.sh with RHEL 9.2 and 17.1 paths.

Also added this change to make testing easier:

diff --git a/tests/infrared/17.1/infrared-openstack.sh b/tests/infrared/17.1/infrared-openstack.sh
index c1d39b0..878c112 100755
--- a/tests/infrared/17.1/infrared-openstack.sh
+++ b/tests/infrared/17.1/infrared-openstack.sh
@@ -10,6 +10,7 @@ AMQP_PORT=${AMQP_PORT:-443}
 SSH_KEY="${SSH_KEY:-${HOME}/.ssh/id_rsa}"
 NTP_SERVER="${NTP_SERVER:-clock.redhat.com,10.5.27.10,10.11.160.238}"
 CLOUD_NAME="${CLOUD_NAME:-cloud1}"
+EXTRA_HOSTS_ENTRIES="${EXTRA_HOSTS_ENTRIES:-127.0.0.1 stf-default-interconnect-5671-service-telemetry.apps-crc.testing}"
 
 VM_IMAGE_URL_PATH="${VM_IMAGE_URL_PATH:-http://download.devel.redhat.com/rhel-9/rel-eng/RHEL-9/latest-RHEL-9.2/compose/BaseOS/x86_64/images/}"
 # Recommend these default to tested immutable dentifiers where possible, pass "latest" style ids via environment if you want them
@@ -95,7 +96,7 @@ ir_create_undercloud() {
 }
 
 stf_create_config() {
-  sed -r "s/<<AMQP_HOST>>/${AMQP_HOST}/;s/<<AMQP_PORT>>/${AMQP_PORT}/;s/<<CLOUD_NAME>>/${CLOUD_NAME}/;s%<<CA_CERT_FILE_CONTENT>>%${CA_CERT_FILE_CONTENT//$'\n'/<@@@>}%;s/<@@@>/\n                /g" ${STF_ENVIRONMENT_TEMPLATE} > outputs/stf-connectors.yaml
+  sed -r "s/<<AMQP_HOST>>/${AMQP_HOST}/;s/<<AMQP_PORT>>/${AMQP_PORT}/;s/<<CLOUD_NAME>>/${CLOUD_NAME}/;s/<<EXTRA_HOSTS_ENTRIES>>/${EXTRA_HOSTS_ENTRIES};s%<<CA_CERT_FILE_CONTENT>>%${CA_CERT_FILE_CONTENT//$'\n'/<@@@>}%;s/<@@@>/\n                /g" ${STF_ENVIRONMENT_TEMPLATE} > outputs/stf-connectors.yaml
 }
 
 gnocchi_create_config() {
diff --git a/tests/infrared/17.1/stf-connectors.yaml.template b/tests/infrared/17.1/stf-connectors.yaml.template
index 6589926..5432312 100644
--- a/tests/infrared/17.1/stf-connectors.yaml.template
+++ b/tests/infrared/17.1/stf-connectors.yaml.template
@@ -48,7 +48,7 @@ custom_templates:
 
         ExtraConfig:
             ExtraHostsEntries:
-                - "10.0.111.41 default-interconnect-5671-service-telemetry.apps.stf15comm.rhos-d.infra.prod.upshift.rdu2.redhat.com"
+                - "<<EXTRA_HOSTS_ENTRIES>>"
 
             collectd::plugin::ceph::daemons:
                - ceph-osd.0

Copy link
Collaborator

@vkmc vkmc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good :)

Curious, is this intended to be used for automation at some point?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious about this, why enable Gnocchi and AODH?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Historical reasons (testing with Gnocchi + Aodh for autoscaling with STF enabled).


OSP_BUILD="${OSP_BUILD:-passed_phase2}"
OSP_VERSION="${OSP_VERSION:-17.1}"
OSP_TOPOLOGY="${OSP_TOPOLOGY:-undercloud:1,controller:3,compute:2,ceph:3}"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it's to be used in development/CI and we don't want to test something specific in the storage, I would avoid enabling Ceph

ExtraHostsEntries:
- "<<EXTRA_HOSTS_ENTRIES>>"

collectd::plugin::ceph::daemons:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those are a lot of OSDs

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea this is all pretty much copy/pasta from previous generations of scripts. You can see these files in the various OSP matching version directories (see 170, 16.2, 13, etc)

@leifmadsen
Copy link
Member Author

Looks good :)

Curious, is this intended to be used for automation at some point?

This is just following existing patterns for development environments. This mimics but does not follow infrared-based jobs. Only for development and we should never implement these scripts in CI. They are mostly just helper scripts to get multi-node OSP deployments running for development purposes.

@leifmadsen leifmadsen marked this pull request as ready for review September 7, 2023 23:05
@leifmadsen
Copy link
Member Author

leifmadsen commented Sep 7, 2023

I'm being a bit loosey goosey with this but it's just a testing script, and it sounds like Victoria might have some alternatives. Also there is https://github.com/shiftstack/dev-install for automated standalone installations.

This doesn't affect any existing deployments and is used solely for development and demo setups. Copied from 17.0 script but removed ceph and added extra hosts to make connecting to STF simpler.

Deployment can be done like so:

CA_CERT_FILE_CONTENT="-----BEGIN CERTIFICATE-----
MIIDUjCCAjqgAwIBAgIQLY2WheUZXfO/oLno+fljGDANBgkqhkiG9w0BAQsFADBD
[...]
0ZqFlRVNE7cW2BXFIaWfnLMtNL5uYSIYi6teTKzGv2j7mLWhC10=
-----END CERTIFICATE-----" OCP_ROUTE_IP="10.0.111.41" AMQP_HOST="default-interconnect-5671-service-telemetry.apps.stf15comm.rhos-d.infra.prod.upshift.rdu2.redhat.com" ENABLE_STF_CONNECTORS=true ENABLE_GNOCCHI_CONNECTORS=false CONTROLLER_MEMORY="24000" COMPUTE_CPU="6" COMPUTE_MEMORY="24000" LIBVIRT_DISKPOOL="/home/libvirt/images" ./infrared-openstack.sh

@leifmadsen leifmadsen requested review from vkmc and csibbitt September 7, 2023 23:09
@leifmadsen
Copy link
Member Author

Opening this up to review as I have it working now. Don't take this script too seriously because it'll go away in STF 2.0 :)

Add a new tests/infrared/17.1/ configuration. Add extra hosts file entry
configuration to make it easier to point at an existing OpenShift deployment
(primarily used with stf-verify-containers).
Update template to match documentation for qdr::router_id values in order to
avoid rhbz#2208020
Some additional templating and removing ceph from the deployment framework
since STF isn't monitoring ceph going forward. Update templating so that extra
hosts for QDR can be passed at deployment time to provide entries in /etc/hosts
on all the nodes.
@csibbitt csibbitt force-pushed the lmadsen-add-osp171-ir branch from 2ab3fba to 67aa464 Compare September 8, 2023 15:24
@csibbitt
Copy link
Collaborator

csibbitt commented Sep 8, 2023

@vkmc These scripts are still my primary way to deploy a multi-node OSP for testing purposes. It's nice to get a fresh set of eyes on them!

Copy link
Collaborator

@csibbitt csibbitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM; untested, but my 17.0 cluster is starting to get pretty long in the tooth so maybe I'll run it sometime next sprint.

@leifmadsen
Copy link
Member Author

I'm merging this because nothing in automation uses it, and it's really just a helper script. I ran this a couple of times and things worked on my system :)

@leifmadsen leifmadsen merged commit 266fc3e into master Sep 11, 2023
7 checks passed
@leifmadsen leifmadsen deleted the lmadsen-add-osp171-ir branch September 11, 2023 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants