Skip to content

[DNM] feat(test_operator): add parallel_group support for concurrent tempest stages#3844

Draft
Valkyrie00 wants to merge 1 commit intoopenstack-k8s-operators:mainfrom
Valkyrie00:feat/test-operator-parallel-stages
Draft

[DNM] feat(test_operator): add parallel_group support for concurrent tempest stages#3844
Valkyrie00 wants to merge 1 commit intoopenstack-k8s-operators:mainfrom
Valkyrie00:feat/test-operator-parallel-stages

Conversation

@Valkyrie00
Copy link
Copy Markdown
Contributor

@Valkyrie00 Valkyrie00 commented Apr 12, 2026

🚨 POC - DNM - WIP 🚨

Add native parallel_group support to the test_operator Ansible role, enabling multiple Tempest CRs to execute simultaneously on the Kubernetes cluster. This leverages the existing spec.parallel: true field in the test-operator CRD, which was previously unused by ci-framework.

Stages sharing the same parallel_group name in cifmw_test_operator_stages are automatically collected, built as individual Tempest CRs with spec.parallel: true, and applied concurrently. The first CR is applied ahead of the others with a configurable wait (cifmw_test_operator_parallel_resource_wait) to allow discover-tempest-config --create to provision shared OpenStack resources (flavors, images, users, projects) before subsequent CRs start.

Stages without parallel_group continue to execute sequentially, preserving full backward compatibility.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Apr 12, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Apr 12, 2026

[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 dasm 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

@softwarefactory-project-zuul
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://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/840f992f4ab24aa2b52765562a25ec6a

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 20m 57s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 21m 36s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 30m 40s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 08m 08s
✔️ cifmw-multinode-tempest SUCCESS in 1h 52m 23s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 46s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 53s
cifmw-pod-pre-commit FAILURE in 8m 23s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 07s

@softwarefactory-project-zuul
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://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/7b6c857be59343f1a69b99af5a45d657

✔️ openstack-k8s-operators-content-provider SUCCESS in 3h 46m 43s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 30m 07s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 32m 11s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 09m 07s
✔️ cifmw-multinode-tempest SUCCESS in 1h 50m 43s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 58s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 48s
cifmw-pod-pre-commit FAILURE in 9m 22s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 15s

@softwarefactory-project-zuul
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://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/eaa0748a2a1a41be90eea1c21696520c

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 26m 22s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 25m 04s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 44m 43s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 07m 23s
✔️ cifmw-multinode-tempest SUCCESS in 1h 59m 01s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 49s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 18s
cifmw-pod-pre-commit FAILURE in 8m 28s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 09s

@Valkyrie00
Copy link
Copy Markdown
Contributor Author

/test all

1 similar comment
@Valkyrie00
Copy link
Copy Markdown
Contributor Author

/test all

@softwarefactory-project-zuul
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://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/5dcdffc5ac0a442c8e579d70525fdd0e

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 32m 30s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 26m 38s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 34m 46s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 16m 34s
✔️ cifmw-multinode-tempest SUCCESS in 1h 47m 08s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 00s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 56s
cifmw-pod-pre-commit FAILURE in 8m 04s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 33s

@Valkyrie00 Valkyrie00 changed the title [DNM] parallel_group support test [DNM] feat(test_operator): add parallel_group support for concurrent tempest stages Apr 26, 2026
…t stages

Add native parallel_group support to the test_operator Ansible role,
enabling multiple Tempest CRs to execute simultaneously by leveraging
the existing spec.parallel field in the test-operator CRD.

Stages sharing the same parallel_group name are collected, built as
individual Tempest CRs with spec.parallel: true, and applied
concurrently. The first CR is applied ahead with a configurable wait
(cifmw_test_operator_parallel_resource_wait) to allow
discover-tempest-config --create to provision shared OpenStack
resources before subsequent CRs start. Stages without parallel_group
continue to execute sequentially, preserving full backward
compatibility.

After all parallel pods complete, logs are collected from each CR's
PVCs via temporary pods, and all parallel resources are cleaned up
automatically.

Signed-off-by: Vito Castellano <vcastell@redhat.com>
@Valkyrie00 Valkyrie00 force-pushed the feat/test-operator-parallel-stages branch from 928f091 to 484fb79 Compare April 26, 2026 21:32
@softwarefactory-project-zuul
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://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/6772b08420ba4eb09be679440908cbd6

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 17m 56s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 22m 02s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 40m 11s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 06m 03s
✔️ cifmw-multinode-tempest SUCCESS in 1h 42m 21s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 14s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 12s
cifmw-pod-pre-commit FAILURE in 9m 46s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 37s

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant