Uh oh!
There was an error while loading. Please reload this page.
Add CPMS e2e-presubmit test stage role for shiftstack-qa - #9
Conversation
imatza-rh
left a comment
There was a problem hiding this comment.
Good port from the IR-plugin. Nice improvements: OpenStack resource cleanup in always, must-gather on test failure. Nit: PR description says "branch fallback" but prepare_openshift_tests.yml has no fallback - same as all other roles, works fine.
Please run ./gate.sh (ansible-lint + pre-commit inside the shiftstack-client container) - no CI checks are configured on GitHub PRs. yamllint passes locally, but ansible-lint needs the container.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
f88cbb5 to
cce04e6Compare
imatza-rh
left a comment
There was a problem hiding this comment.
Three concerns before merging:
1. Timing budget - The osp_verification Zuul job currently runs 7-8.6h against an 8h timeout (recent SUCCESS builds). The CPMS e2e-periodic target has a 5h ginkgo timeout and rolls all 3 masters. Adding both presubmit + periodic would push the total well past the timeout. Consider running only e2e-presubmit initially, or running CPMS tests in a separate periodic job. Has this been tested on a live environment? Duration numbers would help.
2. Suggest splitting the binary download rewrite - The tools_get_openshift_release rewrite (commits bda356e-8548bec, merged from the use-oc-adm-release-extract-for-binaries branch) is independent of the CPMS test role. It changes a shared role used by all job definitions and introduces a hard dependency on rhoso_kubeconfig for pull secret extraction - the old code just did an HTTP GET with no cluster access needed. Splitting into a separate PR would let the CPMS test merge independently and give the shared role change its own review cycle.
3. cpms_replace_attrs wiring - The procedure is added but not wired into any day2ops_procedures list (it was removed from 4.17_ovnkubernetes_ipi.yaml per previous review). The cpms_replacements variable definition was also removed in that commit. Worth adding defaults and wiring it in osp_verification.yaml if it's intended to run, or noting in the description that it'll be wired separately.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
c18853c to
c867cb4Compare
@imatza-rh For For For the binary download rewrite: So this PR would ship:
Does this approach work? |
imatza-rh
commented
Jun 29, 2026
Presubmit-only default sounds right. Worth noting Keeping Binary rewrite confirmed out of this diff. |
…inner rescue Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…2 is file Co-authored-by: Cursor <cursoragent@cursor.com>
…able list Co-authored-by: Cursor <cursoragent@cursor.com>
546a490 to
43e4123Compare… capacity Co-authored-by: Cursor <cursoragent@cursor.com>
tusharjadhav3302
commented
Jul 7, 2026
Update: CPMS e2e-presubmit validated end-to-end on serval71 Manual run completed successfully — 76 tests, 0 failures, 0 errors (~4.5h on constrained environment). All artifacts generated correctly (JUnit XML, HTML, Polarion report directory). Latest commit ( Zuul end-to-end is blocked on the CAPO webhook fix (PR openshift/cluster-api-provider-openstack#423) landing in a nightly. Once that merges and Timing note: e2e-presubmit took ~4.5h on this hardware. On serval70/71 with the osp_verification job (7-8h baseline), this would exceed the 8h Zuul timeout. @imatza-rh Should have have a separate periodic job for cpms e2e-presubmit as well and not run it during the periodic ci run, given the timeout issue it could have? |
…errors, key order Co-authored-by: Cursor <cursoragent@cursor.com>
…created Co-authored-by: Cursor <cursoragent@cursor.com>
tusharjadhav3302
commented
Jul 7, 2026
@imatza-rh for now I have removed cpms_test from osp_verification.yaml stages. The e2e-presubmit takes ~4.5h on our virtualized environment which would exceed the 8h Zuul job timeout when combined with the other stages. The role code, sub-play, and ocp_testing.yaml wiring remain in place — CPMS tests can still be run manually or enabled in a dedicated periodic job (follow-up PR). |
ekuris-redhat
left a comment
There was a problem hiding this comment.
LGTM , Also tested and it worked
Uh oh!
There was an error while loading. Please reload this page.
Summary
Add a new
cpms_teststage role that runs the upstreamcluster-control-plane-machine-set-operatore2e-presubmit tests, and include thecpms_replace_attrsday2ops procedure (unwired, for future use).What this PR includes
New
cpms_teststage role (collection/stages/roles/cpms_test/):release-X.Ybranchmake e2e-presubmit(rolls 1 master, ~30 min) withOPENSHIFT_CI=truefor JUnit outputpost_openshift_tests.yml(XML tag modification, HTML conversion, copy to report directory)e2e-presubmitonly viacpms_test_suitesvariable —e2e-periodiccan be enabled by overriding this list in a dedicated jobNew
cpms_replace_attrsday2ops procedure (unwired):openshift-ir-plugin— patches CPMS with modified failure domains, networks, and security groupsWiring:
cpms_teststage added toosp_verification.yaml(runs in the existing Zuul periodic job)playbooks/plays/cpms_test.yamland import inocp_testing.yamlWhat this PR does NOT include
e2e-periodicis not enabled by default (5h timeout, rolls all 3 masters — exceeds the 8h Zuul job budget)cpms_replace_attrsis not wired into anyday2ops_procedureslist (nocpms_replacementsdefaults — those create real OpenStack resources and require explicit configuration)Test plan
e2e-presubmitcompleting within the 8h budget