Skip to content

Conversation

@sauragar
Copy link

@sauragar sauragar commented Jan 7, 2026

This commit will ensure to have the proper auto-sync of README.md with the defaults/main.yml file and also added the post-commit file so whenever someone commits in the defaults/main.yml file the script can be auto-run

Ticket: OSPRH-19423

This PR #3327 is closed since I am not able to reopen the PR

Signing off: Saurabh Agarwal sauragar@redhat.com

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 7, 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 rebtoor 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

Copy link
Contributor

@kstrenkova kstrenkova left a comment

Choose a reason for hiding this comment

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

Thank you for the PR! I have tested it locally and found a small issue with updating the defaults. It is explained in the comments, the fix should be rather simple. Other than that I saw the README sync was working nicely, so I think you're close to the finish 🎉 I like that the parameters will be in alphabetical order now :D Maybe there could be a mention of the script somewhere in the README so that people know they can use the sync when creating new variables or updating the old ones.

@softwarefactory-project-zuul
Copy link

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/4de28a813ea54e73883c28ab7ff35c81

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 18m 29s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 20m 49s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 41m 18s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 04m 04s
✔️ cifmw-multinode-tempest SUCCESS in 1h 45m 54s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 23s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 48s
cifmw-pod-pre-commit FAILURE in 7m 42s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 29s

Copy link
Contributor

@kstrenkova kstrenkova left a comment

Choose a reason for hiding this comment

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

What is left are just a few transformations from defaults to to Default value: where it is possible. Other than that lgtm.

Copy link
Contributor

@kstrenkova kstrenkova left a comment

Choose a reason for hiding this comment

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

I am adding 2 comments about the same issue atop of my previous comments.

@softwarefactory-project-zuul
Copy link

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/fe0fdd8386324989bd8ea335a95f52d6

openstack-k8s-operators-content-provider FAILURE in 4m 53s
⚠️ 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 SUCCESS in 4m 32s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 12m 50s
cifmw-pod-pre-commit FAILURE in 8m 07s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 03s

@softwarefactory-project-zuul
Copy link

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/5eac463796534f4b89b1f990b236fe22

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 29m 11s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 28m 37s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 39m 55s
✔️ cifmw-crc-podified-edpm-baremetal-minor-update SUCCESS in 2h 10m 53s
✔️ cifmw-multinode-tempest SUCCESS in 1h 53m 13s
✔️ cifmw-pod-zuul-files SUCCESS in 4m 24s
✔️ noop SUCCESS in 0s
✔️ cifmw-pod-ansible-test SUCCESS in 8m 36s
cifmw-pod-pre-commit FAILURE in 8m 30s
✔️ cifmw-molecule-test_operator SUCCESS in 3m 00s

- Add automatic sync script (sync_test_operator_var_readme.py) to keep
  README.md in sync with defaults/main.yml
- Reorganize parameter documentation in alphabetical order
- Replace inline default value definitions with references to
  defaults/main.yml to reduce duplication and improve maintainability
- Add auto-sync note at the top of README.md
- Fix pre-commit ansible-lint compatibility

Signed-off-by: Saurabh Agarwal <sauragar@redhat.com>

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Copy link
Contributor

@kstrenkova kstrenkova left a comment

Choose a reason for hiding this comment

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

I am leaving a few very small comments. I think the PR is almost done, so it would be a good idea to ask someone else for a review to get more perspective. I am also not sure about editing the pre-commit and setup_molecule files, we need someone from ci-framework for that :D


# 1️⃣ Redirect if value is complex
if should_redirect(value):
print("should_redirect =", should_redirect(value))
Copy link
Contributor

Choose a reason for hiding this comment

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

When you run the script there are a lot of these prints, which say nothing to the user. I think it could be removed.

# Convert Python bool to lowercase for consistency
if isinstance(value, bool):
value_str = str(value).lower()
elif value is None:
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think the if or elif is needed. It should reflect the real values that are in the defaults/main.yaml file. I am not sure why the value can be None when in the defaults/main.yaml there are no None, so you can correct me.


def normalize_default_text(block, value):
# Normalize "Defaults to `x`" → "Default value: `x`"
block = re.sub(
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think this substitution is needed. If someone wanted to, they could also do Default: and this code wouldn't help to keep consistency. So I don't think it's necessary to normalize it, as you can never catch all cases.

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.

2 participants