Skip to content

[reproducer] Replace all reproducer vars with zuul vars#3794

Merged
danpawlik merged 5 commits intoopenstack-k8s-operators:mainfrom
danpawlik:add-missing-vars
Apr 8, 2026
Merged

[reproducer] Replace all reproducer vars with zuul vars#3794
danpawlik merged 5 commits intoopenstack-k8s-operators:mainfrom
danpawlik:add-missing-vars

Conversation

@danpawlik
Copy link
Copy Markdown
Contributor

Some variables are missing, especially related to the registry credentials. That complicate the situation, where some keys might not exists in reproducer file.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Mar 24, 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 Mar 24, 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

@danpawlik danpawlik force-pushed the add-missing-vars branch 3 times, most recently from 6a1b430 to 68cd119 Compare March 24, 2026 17:43
@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/8560d523cce242b28ec457c07f18e35a

✔️ openstack-k8s-operators-content-provider SUCCESS in 1h 50m 01s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 16m 59s
cifmw-crc-podified-edpm-baremetal RETRY_LIMIT in 35m 02s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 37s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 53s
✔️ cifmw-pod-pre-commit SUCCESS in 8m 02s
✔️ cifmw-molecule-reproducer SUCCESS in 15m 24s

@danpawlik danpawlik force-pushed the add-missing-vars branch 4 times, most recently from 683a3b7 to 80a6737 Compare March 25, 2026 10:56
@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/f900364b37dd4a6d8490ab00684f63ec

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 10m 09s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 23m 17s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 40m 02s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 1h 56m 12s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 20s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 57s
cifmw-pod-pre-commit FAILURE in 9m 13s
✔️ cifmw-molecule-reproducer SUCCESS in 14m 38s

@danpawlik danpawlik force-pushed the add-missing-vars branch 2 times, most recently from ecffa42 to ed8a07c Compare March 26, 2026 12:04
@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/671d3fe55c554034a1518d261c5555da

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 53m 41s
podified-multinode-edpm-deployment-crc FAILURE in 22m 50s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 35m 16s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 03m 58s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 11s
adoption-standalone-to-crc-ceph-provider RETRY_LIMIT Host unreachable in 2h 40m 56s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 14s
cifmw-pod-pre-commit FAILURE in 8m 45s
✔️ cifmw-molecule-cifmw_setup SUCCESS in 1m 40s
✔️ cifmw-molecule-reproducer SUCCESS in 15m 39s

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

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 59m 39s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 24m 47s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 33m 36s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 1h 50m 26s
✔️ cifmw-pod-zuul-files SUCCESS in 6m 14s
adoption-standalone-to-crc-ceph-provider RETRY_LIMIT Host unreachable in 2h 43m 40s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 14s
cifmw-pod-pre-commit FAILURE in 9m 08s
✔️ cifmw-molecule-cifmw_setup SUCCESS in 1m 37s
✔️ cifmw-molecule-reproducer SUCCESS in 15m 00s

@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/5c655dbf833c4805aca3556d23c67655

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 51m 28s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 21m 30s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 35m 00s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 1h 59m 43s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 38s
adoption-standalone-to-crc-ceph-provider RETRY_LIMIT Host unreachable in 2h 38m 16s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 47s
cifmw-pod-pre-commit FAILURE in 8m 32s
✔️ cifmw-molecule-cifmw_setup SUCCESS in 1m 36s
✔️ cifmw-molecule-reproducer SUCCESS in 16m 17s

@danpawlik danpawlik force-pushed the add-missing-vars branch 6 times, most recently from 5f4497d to 54bba3a Compare March 27, 2026 09:50
@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/8afcb1210c2a44919fcf921951d8e34c

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 14m 09s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 22m 22s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 34m 08s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 01m 31s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 40s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 01s
cifmw-pod-pre-commit FAILURE in 8m 40s
✔️ cifmw-molecule-reproducer SUCCESS in 14m 02s

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

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 18m 56s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 24m 41s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 35m 28s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 06m 10s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 35s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 07s
cifmw-pod-pre-commit FAILURE in 8m 02s
✔️ cifmw-molecule-reproducer SUCCESS in 15m 00s

@danpawlik danpawlik requested a review from arxcruz April 1, 2026 12:52
@danpawlik danpawlik requested review from a team, adrianfusco, jirimacku and kstrenkova April 1, 2026 12:52
@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/d0258052538a4d2c8191381efa454700

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 25m 48s
podified-multinode-edpm-deployment-crc FAILURE in 1h 18m 40s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 40m 55s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 08m 06s
✔️ cifmw-pod-zuul-files SUCCESS in 5m 44s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 9m 23s
✔️ cifmw-pod-pre-commit SUCCESS in 9m 14s
✔️ cifmw-molecule-reproducer SUCCESS in 15m 02s

@danpawlik
Copy link
Copy Markdown
Contributor Author

recheck

@danpawlik danpawlik marked this pull request as ready for review April 1, 2026 15:06
@danpawlik danpawlik mentioned this pull request Apr 1, 2026
@danpawlik
Copy link
Copy Markdown
Contributor Author

recheck

Copy link
Copy Markdown
Contributor

@evallesp evallesp left a comment

Choose a reason for hiding this comment

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

Just a blocking thing about a comment.
Rest are non-blocking.
In any case, despite we don't have this in our codebase, would be awesome to have docstring in the python code and python test file.

Example of docstring:
"""
Resum,e

:param1 str name1: description
:param2 int name2: description    """

Comment thread roles/reproducer/tasks/sync_src_dir.yml Outdated
Comment thread roles/reproducer/tasks/sync_src_dir.yml Outdated
Comment thread roles/reproducer/tasks/sync_src_dir.yml Outdated
Comment thread roles/reproducer/tasks/overwrite_zuul_vars.yml Outdated
- name: Slurp merged reproducer-variables.yml from hypervisor
ansible.builtin.slurp:
src: "{{ temp_merged_reproducer_var_path }}"
register: merged_reproducer_slurp
no_log: "{{ cifmw_nolog | default(true) | bool }}"

- name: Write back merged reproducer-variables.yml
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.

(non-blocking) question: Could we merge this task with the following one? I'm unsure if in this one the backup as true is necessary, or if we should move in the following the backup to true.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

backup does not have extension yaml, might be helpful to compare vars during bootstrap vs before test execution. IMHO would be good to keep it.

Copy link
Copy Markdown
Contributor

@evallesp evallesp Apr 8, 2026

Choose a reason for hiding this comment

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

I mean that we have two tasks almost equal, just the dest path changes. One has backup and the other has no:

        ansible.builtin.copy:
        content: "{{ merged_reproducer_slurp.content | b64decode }}"
        dest: "{{ cifmw_basedir }}/parameters/reproducer-variables.yml"
        mode: '0664'
        mode: "0664"
        backup: true
      no_log: "{{ cifmw_nolog | default(true) | bool }}"
      delegate_to: controller-0

    - name: Overwrite custom-params.yml
      ansible.builtin.copy:
        content: "{{ merged_reproducer_slurp.content | b64decode }}"
        dest: "{{ cifmw_basedir }}/artifacts/parameters/custom-params.yml"
        mode: "0664"
      no_log: "{{ cifmw_nolog | default(true) | bool }}"
      delegate_to: controller-0

to:

      - name: backup reproducer and overwrite custom params
        ansible.builtin.copy:
        content: "{{ merged_reproducer_slurp.content | b64decode }}"
        dest:  "{{ item }}"
        mode: "0664"
        backup: true
      no_log: "{{ cifmw_nolog | default(true) | bool }}"
      delegate_to: controller-0
      loop: ["{{ cifmw_basedir }}/parameters/reproducer-variables.yml", "{{ cifmw_basedir }}/artifacts/parameters/custom-params.yml"]

Comment thread roles/reproducer/tasks/overwrite_pull_secret.yml
Comment thread roles/reproducer/files/merge_yaml_override.py
Comment thread roles/reproducer/files/merge_yaml_override.py Outdated
Comment thread roles/reproducer/files/merge_yaml_override.py
@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/ad9f553a18bd470788a836141da968b2

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 20m 53s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 24m 54s
cifmw-crc-podified-edpm-baremetal RETRY_LIMIT Host unreachable in 1h 10m 46s
cifmw-crc-podified-edpm-baremetal-minor-update FAILURE in 2h 05m 58s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 48s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 36s
✔️ cifmw-pod-pre-commit SUCCESS in 8m 37s
✔️ cifmw-molecule-reproducer SUCCESS in 14m 35s

Some variables are missing, especially related to the registry
credentials. That complicate the situation, where some keys
might not exists in reproducer file. Some of the variables
are jinja2 template, which are "translated" by Ansible.
Alternative way was to use yq command like:

    yq eval-all -P 'select(fileIndex == 0) * select(fileIndex == 1)' \
        /tmp/reproducer-variables.yml \
        /home/zuul/configs/zuul_vars.yaml > merged.yaml

The yq is available in latest version available for current python3
version installed on hypervisor. In that case, we can not use
the yq tool, but use a python script.

Co-authored-by: Claude (AI Assistant) claude@anthropic.com

Signed-off-by: Daniel Pawlik <dpawlik@redhat.com>
Keep support for legacy workflow where controller host is created
and actions are done not on hypervisor directly, but on controller.

Signed-off-by: Daniel Pawlik <dpawlik@redhat.com>
On executing nested Ansible, some variables like: 'cifmw_registry_token'
are not redirected, which is causing an issue in later tasks, which are
operating on those variables and if it is undefine, it raise an issue.
To satisfy nested Ansible execution, provide necessary variables.

Also include hypervisor name as it can be a missing variable, due
jobs already bootstrapped by ZIronic does not require to have that
variable, which in some tasks is necessary.

Signed-off-by: Daniel Pawlik <dpawlik@redhat.com>
The pull_secret.json might contain authentication to
necessary registries for CI job, that are not available during the
bootstrap process using PreMetal (earlier ZIronic).
Let's move all the tasks for pre job execution after PreMetal
bootstrap.
That would make reproducer playbook easier to read.

Signed-off-by: Daniel Pawlik <dpawlik@redhat.com>
@danpawlik danpawlik requested a review from evallesp April 7, 2026 17:00
@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/59d7c99e27e44ff6afa5702adb0c6115

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 19m 28s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 24m 36s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 34m 19s
cifmw-crc-podified-edpm-baremetal-minor-update FAILURE in 2h 05m 54s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 18s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 42s
✔️ cifmw-pod-pre-commit SUCCESS in 7m 54s
✔️ cifmw-molecule-reproducer SUCCESS in 16m 10s

@danpawlik
Copy link
Copy Markdown
Contributor Author

Testproject pass without Premetal - 2159 - SUCCESS
PreMetal + test - 2146 - SUCCESS

@danpawlik
Copy link
Copy Markdown
Contributor Author

recheck

Copy link
Copy Markdown
Contributor

@evallesp evallesp left a comment

Choose a reason for hiding this comment

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

/lgtm

@openshift-ci openshift-ci bot added the lgtm label Apr 8, 2026
@danpawlik danpawlik merged commit b1b7445 into openstack-k8s-operators:main Apr 8, 2026
6 of 8 checks passed
@danpawlik danpawlik deleted the add-missing-vars branch April 8, 2026 10:20
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