Skip to content

[kuttl] Honor cifmw_zuul_target_host_env in operator Make targets - #4122

Open
stuggi wants to merge 1 commit into
openstack-k8s-operators:mainfrom
stuggi:fix-kuttl-suite-env
Open

[kuttl] Honor cifmw_zuul_target_host_env in operator Make targets#4122
stuggi wants to merge 1 commit into
openstack-k8s-operators:mainfrom
stuggi:fix-kuttl-suite-env

Conversation

@stuggi

@stuggi stuggi commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

The kuttl-from-operator jobs let a Zuul job select the kuttl suite via cifmw_zuul_target_host_env (e.g. KUTTL_SUITE), which is exported into the job parameters (zuul-params.yml) and available to the run/deps plays.

However, the tasks that invoke the operator Make targets hardcoded their environment to only KUBECONFIG and PATH, so cifmw_zuul_target_host_env was never applied. As a result make kuttl-test-prep and make kuttl-test-run always used the operator Makefile default (KUTTL_SUITE ?= ), silently ignoring the job's override.

Concretely, nova-operator's nova-operator-kuttl-placement job sets KUTTL_SUITE=placement but ran the nova suite instead, leaving the placement kuttl suite with zero CI coverage.

Merge cifmw_zuul_target_host_env into the environment of both make invocations so a job can override the suite (and any other Make env var) it needs.

Related: https://redhat.atlassian.net/browse/OSPRH-33503

@openshift-ci

openshift-ci Bot commented Aug 19, 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 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

@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: a4421a55-a37c-4bf9-84f7-3c8c03134112

📥 Commits

Reviewing files that changed from the base of the PR and between 9896820 and fe8c2a0.

📒 Files selected for processing (2)
  • ci/playbooks/kuttl/deploy-deps.yaml
  • ci/playbooks/kuttl/run-kuttl-from-operator-targets.yaml

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Summary by CodeRabbit

  • Bug Fixes
    • Improved KUTTL test execution by correctly passing Kubernetes configuration, command paths, and optional job settings.
    • Job-specific test options, such as selecting a KUTTL suite, are now honored during dependency preparation and test runs.

Walkthrough

The KUTTL dependency preparation and test tasks now merge cifmw_zuul_target_host_env with required KUBECONFIG and PATH values. Job-provided variables such as KUTTL_SUITE can reach both tasks.

Changes

KUTTL environment propagation

Layer / File(s) Summary
Merge KUTTL task environments
ci/playbooks/kuttl/deploy-deps.yaml, ci/playbooks/kuttl/run-kuttl-from-operator-targets.yaml
The preparation and test tasks retain KUBECONFIG and PATH, then merge optional cifmw_zuul_target_host_env values. Job-provided values can override or add environment variables.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to fe8c2

The change forwards the selected Make environment into both KUTTL targets so configured suites can run as intended. No actionable merge-blocking risk remains beyond normal checks.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the KUTTL environment change and matches the main purpose of the pull request.
Description check ✅ Passed The description explains why the environment merge is needed and how it enables job-specific KUTTL suite selection.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@stuggi

stuggi commented Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

with this the correct kuttl tests were triggered in openstack-k8s-operators/nova-operator#1176

--- PASS: kuttl (181.21s)
--- PASS: kuttl/harness (0.00s)
--- PASS: kuttl/harness/placement_deploy_tls (84.39s)
--- PASS: kuttl/harness/placement_scale (96.81s)

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/logs//2df/rdoproject.org/2dfd1429ab9b438784f05a4a75a10940/controller/controller/kuttl-test-run.out

@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/831c067390b04985ba46a72863cb954c

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 11m 23s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 41m 08s
cifmw-crc-podified-edpm-baremetal NODE_FAILURE Node(set) request 099-0000175087 failed in 0s
cifmw-crc-podified-edpm-baremetal-minor-update NODE_FAILURE Node(set) request 099-0000175088 failed in 0s
✔️ openstack-k8s-operators-content-provider-bootc SUCCESS in 3h 06m 20s
✔️ cifmw-crc-podified-edpm-baremetal-bootc SUCCESS in 1h 55m 51s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 24s
✔️ cifmw-pod-pre-commit SUCCESS in 9m 16s
cifmw-multinode-kuttl FAILURE in 3h 20m 07s

@stuggi

stuggi commented Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

recheck

1 similar comment
@stuggi

stuggi commented Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

recheck

@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/269cae8b725d4bc9811a062958806659

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 28m 29s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 28m 45s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 46m 08s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 12m 46s
✔️ openstack-k8s-operators-content-provider-bootc SUCCESS in 2h 23m 28s
✔️ cifmw-crc-podified-edpm-baremetal-bootc SUCCESS in 1h 46m 01s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 10m 04s
✔️ cifmw-pod-pre-commit SUCCESS in 9m 30s
cifmw-multinode-kuttl FAILURE in 2h 37m 51s

@stuggi

stuggi commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

recheck

@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/6750779face44b2797e5b8e3a0a096fd

✔️ openstack-k8s-operators-content-provider SUCCESS in 16m 39s
podified-multinode-edpm-deployment-crc NODE_FAILURE Node(set) request 099-0000175802 failed in 0s
cifmw-crc-podified-edpm-baremetal NODE_FAILURE Node(set) request 099-0000175803 failed in 0s
cifmw-crc-podified-edpm-baremetal-minor-update NODE_FAILURE Node(set) request 099-0000175804 failed in 0s
✔️ openstack-k8s-operators-content-provider-bootc SUCCESS in 51m 08s
cifmw-crc-podified-edpm-baremetal-bootc NODE_FAILURE Node(set) request 099-0000175824 failed in 0s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 49s
✔️ cifmw-pod-pre-commit SUCCESS in 8m 40s
cifmw-multinode-kuttl FAILURE in 2h 33m 58s

@stuggi

stuggi commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

recheck

The kuttl-from-operator jobs let a Zuul job select the kuttl suite via
cifmw_zuul_target_host_env (e.g. KUTTL_SUITE), which is exported into the
job parameters (zuul-params.yml) and available to the run/deps plays.

However, the tasks that invoke the operator Make targets hardcoded their
`environment` to only KUBECONFIG and PATH, so cifmw_zuul_target_host_env
was never applied. As a result `make kuttl-test-prep` and
`make kuttl-test-run` always used the operator Makefile default
(KUTTL_SUITE ?= <default>), silently ignoring the job's override.

Concretely, nova-operator's nova-operator-kuttl-placement job sets
KUTTL_SUITE=placement but ran the nova suite instead, leaving the
placement kuttl suite with zero CI coverage.

Merge cifmw_zuul_target_host_env into the environment of both make
invocations so a job can override the suite (and any other Make env var)
it needs.

Related: https://redhat.atlassian.net/browse/OSPRH-33503

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Martin Schuppert <mschuppert@redhat.com>
@stuggi
stuggi force-pushed the fix-kuttl-suite-env branch from fe8c2a0 to 3b12cd9 Compare August 20, 2026 09:24
@stuggi

stuggi commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

rebased

@amartyasinha amartyasinha left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

/lgtm

@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/ceccae052717417086c6e2a125f184d6

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 09m 25s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 49m 26s
cifmw-crc-podified-edpm-baremetal NODE_FAILURE Node(set) request 099-0000176104 failed in 0s
cifmw-crc-podified-edpm-baremetal-minor-update NODE_FAILURE Node(set) request 099-0000176105 failed in 0s
openstack-k8s-operators-content-provider-bootc TIMED_OUT in 46m 34s
⚠️ cifmw-crc-podified-edpm-baremetal-bootc SKIPPED Skipped due to failed job openstack-k8s-operators-content-provider-bootc
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 52s
✔️ cifmw-pod-pre-commit SUCCESS in 8m 32s
cifmw-multinode-kuttl FAILURE in 2h 51m 11s

@stuggi

stuggi commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

recheck

@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/74fe5e85f2d74c8f868e66ac098aebc3

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 40m 30s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 30m 56s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 41m 57s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 24m 50s
✔️ openstack-k8s-operators-content-provider-bootc SUCCESS in 41m 51s
cifmw-crc-podified-edpm-baremetal-bootc NODE_FAILURE Node(set) request 099-0000176692 failed in 0s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 15s
✔️ cifmw-pod-pre-commit SUCCESS in 8m 16s
cifmw-multinode-kuttl FAILURE in 2h 41m 34s

@stuggi

stuggi commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

recheck

@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/3ba9fea34e0e47faae2b51d629500fe1

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 30m 47s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 30m 51s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 50m 44s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 16m 03s
✔️ openstack-k8s-operators-content-provider-bootc SUCCESS in 1h 55m 46s
cifmw-crc-podified-edpm-baremetal-bootc FAILURE in 1h 20m 09s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 10m 10s
✔️ cifmw-pod-pre-commit SUCCESS in 9m 21s
cifmw-multinode-kuttl FAILURE in 2h 31m 52s

@stuggi

stuggi commented Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

needs openstack-k8s-operators/openstack-operator#2042 to land. the barbican kuttl job is using the new operator version, but still the kuttl test files from the barbican operator referenced in the current openstack-operator go.mod

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants