Skip to content

[rally] Add Rally role and test_operator integration#3996

Open
lkuchlan wants to merge 1 commit into
openstack-k8s-operators:mainfrom
lkuchlan:add-rally-role
Open

[rally] Add Rally role and test_operator integration#3996
lkuchlan wants to merge 1 commit into
openstack-k8s-operators:mainfrom
lkuchlan:add-rally-role

Conversation

@lkuchlan

Copy link
Copy Markdown
Contributor

Add a new rally Ansible role that runs OpenStack Rally benchmarks inside a podman container (quay.io/airshipit/xrally-openstack:3.0.0). The role auto-discovers OpenStack credentials from the cluster's KeystoneAPI resource and appends the deployment CA to the trust bundle so SSL verification works without any manual configuration.

Wire Rally into the test_operator multi-stage framework via a new rally_runner.yml dispatcher and cifmw_test_operator_rally_* defaults, so it can run as a named stage alongside Tempest.

Key design decisions:

  • Podman container (no Kubernetes CRD exists for Rally)
  • Shell script templated to disk to avoid YAML/JSON quoting issues
  • --fromenv deployment creation — no JSON config file needed
  • rootca-public CA from the openstack namespace appended to the CA bundle so the container can verify the Keystone TLS endpoint
  • Default task: Authenticate.keystone (no cloud resources required)
  • cinder-task.yaml included for Cinder volume benchmarks

Assisted-By: Claude Sonnet 4.6 noreply@anthropic.com

@openshift-ci

openshift-ci Bot commented Jun 14, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign michburk for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/bf4c2f1d592c429fbc5f647b5e6d0291

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 16m 50s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 31m 41s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 32m 19s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 04m 01s
cifmw-multinode-tempest FAILURE in 1h 48m 46s
cifmw-pod-zuul-files FAILURE in 5m 23s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 16s
cifmw-pod-pre-commit FAILURE in 7m 15s
✔️ cifmw-molecule-test_operator SUCCESS in 4m 14s

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/662f66b62e854e55b7a590b4ec9e18a6

openstack-k8s-operators-content-provider FAILURE in 7m 00s
⚠️ podified-multinode-edpm-deployment-crc SKIPPED Skipped due to failed job openstack-k8s-operators-content-provider
⚠️ cifmw-crc-podified-edpm-baremetal SKIPPED Skipped due to failed job openstack-k8s-operators-content-provider
⚠️ cifmw-crc-podified-edpm-baremetal-minor-update SKIPPED Skipped due to failed job openstack-k8s-operators-content-provider
⚠️ cifmw-multinode-tempest SKIPPED Skipped due to failed job openstack-k8s-operators-content-provider
cifmw-pod-zuul-files FAILURE in 5m 41s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 14s
cifmw-pod-pre-commit FAILURE in 7m 29s
✔️ cifmw-molecule-test_operator SUCCESS in 4m 18s

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/eaffeaa267354aed85c70b494ff76c00

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 39m 19s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 33m 46s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 39m 09s
cifmw-crc-podified-edpm-baremetal-minor-update FAILURE in 2h 15m 21s
✔️ cifmw-multinode-tempest SUCCESS in 1h 56m 24s
cifmw-pod-zuul-files FAILURE in 5m 11s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 10m 02s
cifmw-pod-pre-commit FAILURE in 8m 59s
✔️ cifmw-molecule-test_operator SUCCESS in 4m 05s

Add a new `rally` Ansible role that runs OpenStack Rally benchmarks
inside a podman container (quay.io/airshipit/xrally-openstack:3.0.0).
The role auto-discovers OpenStack credentials from the cluster's
KeystoneAPI resource and appends the deployment CA to the trust bundle
so SSL verification works without any manual configuration.

Wire Rally into the `test_operator` multi-stage framework via a new
`rally_runner.yml` dispatcher and `cifmw_test_operator_rally_*`
defaults, so it can run as a named stage alongside Tempest.

Key design decisions:
- Podman container (no Kubernetes CRD exists for Rally)
- Shell script templated to disk to avoid YAML/JSON quoting issues
- `--fromenv` deployment creation — no JSON config file needed
- `rootca-public` CA from the `openstack` namespace appended to the
  CA bundle so the container can verify the Keystone TLS endpoint
- Default task: `Authenticate.keystone` (no cloud resources required)
- `cinder-task.yaml` included for Cinder volume benchmarks

Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: lkuchlan <lkuchlan@redhat.com>
@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/431e13de80224aaa9d839282787ec241

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 23m 47s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 27m 54s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 45m 04s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 09m 30s
✔️ cifmw-multinode-tempest SUCCESS in 1h 50m 53s
cifmw-pod-zuul-files FAILURE in 5m 27s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 57s
cifmw-pod-pre-commit FAILURE in 8m 13s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 55s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant