Add consumer smoke job and deployment key validation - #53
Conversation
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
5d1e94e to
e3021d0
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
e3021d0 to
fc62e10
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
fc62e10 to
6485046
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
| - name: Require content provider metadata | ||
| ansible.builtin.assert: | ||
| that: | ||
| - s2i_ci_content is defined | ||
| - s2i_ci_content is mapping | ||
| - s2i_ci_content.registry is string | ||
| - s2i_ci_content.registry | length > 0 | ||
| - s2i_ci_content.images is sequence | ||
| - s2i_ci_content.images | length > 0 | ||
| - s2i_ci_content.selected_images is sequence | ||
| - s2i_ci_content.custom_container_images is mapping | ||
| - content_provider_os_custom_container_images is defined | ||
| - content_provider_os_custom_container_images is mapping | ||
| fail_msg: >- | ||
| Content provider metadata is missing or malformed. | ||
| Verify the content-provider job completed and paused successfully. |
There was a problem hiding this comment.
+1
my current molecule test dont actully build the images
so this is adding some real test coverage.
currently they fake the metadata and include the task fiels and assert the sideffect i that if you have a malformed output that the taks fials.
this smoke test job will catch if we dont build the image and let us know without havign to dig through an edpm style jobs logs just to find that we used the wrong images.
in this repo at least we could optimise the jobs a littel by only runnign the edpm tempet job if this one also passes but that might be over optimizing.
6485046 to
c9aa18d
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
c9aa18d to
74fc979
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
|
recheck |
|
Zuul encountered a syntax error while parsing its Job s2i-openstack-container-content-provider not defined The problem appears in the "openstack-k8s-operators/s2i-openstack-containers" project stanza: project: in "openstack-k8s-operators/s2i-openstack-containers/zuul.d/projects.yaml@main", line 2 |
|
recheck |
|
Zuul encountered a syntax error while parsing its Job s2i-openstack-container-content-provider not defined The problem appears in the "openstack-k8s-operators/s2i-openstack-containers" project stanza: project: in "openstack-k8s-operators/s2i-openstack-containers/zuul.d/projects.yaml@main", line 2 |
856cdab to
086a2e0
Compare
|
Zuul encountered a syntax error while parsing its Job s2i-openstack-container-content-provider not defined The problem appears in the "openstack-k8s-operators/s2i-openstack-containers" project stanza: project: in "openstack-k8s-operators/s2i-openstack-containers/zuul.d/projects.yaml@main", line 2 |
394922b to
1dfaf2d
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
1dfaf2d to
a9f9f9f
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
a9f9f9f to
4cc3fa9
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
|
Build failed (check pipeline). Post ✔️ s2i-openstack-containers-molecule SUCCESS in 2m 08s |
|
recheck |
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
fbf4c61 to
bfa39bb
Compare
bfa39bb to
f08144a
Compare
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
|
recheck |
|
Build failed (check pipeline). Post ✔️ s2i-openstack-containers-molecule SUCCESS in 2m 07s |
f08144a to
6452648
Compare
6452648 to
1840f51
Compare
|
Build failed (check pipeline). Post ✔️ s2i-openstack-containers-molecule SUCCESS in 2m 01s |
|
recheck |
|
/approve |
Add a consumer smoke Zuul job that validates the content provider contract on a fresh consumer node: registry access, image pull, image inspection, and deployment key resolution. Add a unit test validating deployment keys in image-mappings.yaml against OpenStackVersion.spec.customContainerImages fields (covers both ContainerTemplate and ContainerDefaults structs). Co-authored-by: Cursor <cursoragent@cursor.com> Signed-off-by: Roberto Alfieri <ralfieri@redhat.com>
1840f51 to
7eb992d
Compare
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: arxcruz The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
f1286cf
into
openstack-k8s-operators:main
Summary
image-mappings.yamlagainstOpenStackVersion.spec.customContainerImagesfields (covers bothContainerTemplateandContainerDefaultsstructs)Consumer smoke job
The
s2i-openstack-container-consumer-smokejob depends on the content provider, pulls all published images, inspects them, and validates that every deployment key resolves to a pulled image. It is service-agnostic and works with any set of images the content provider publishes.Deployment key validation test
test_deployment_keys.pyparses the centralimage-mappings.yamland checks every declared deployment key against the canonicalOpenStackVersionCRD fields. When a localopenstack-operatorcheckout is available, it parses the Go source live; otherwise it falls back to a frozen field set and flags staleness. Additional checks verify uniqueness, Containerfile existence, and mapping completeness.Validation
python3 -m unittest tests.test_deployment_keys -v-- all checks passed