PROJQUAY-5850: ci: add shared QE STS test steps - #85292
sudipshil9862 wants to merge 2 commits into
Conversation
Provision per-run DEV AWS resources for WebIdentity testing on the shared QE cluster. Guard cleanup by cluster identity and ownership, retain the shared OIDC registration, and document the pending QE job and isolated OLM adapter.
|
Skipping CI for Draft Pull Request. |
|
@sudipshil9862: This pull request references [Jira Issue PROJQUAY-5850](https://redhat.atlassian.net/browse/PROJQUAY-5850), which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: sudipshil9862 The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (14)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. WalkthroughThe PR adds Quay STS provision, test, and cleanup steps. The steps validate identities and ownership, create isolated AWS and OpenShift resources, run the Chainsaw STS test, remove owned resources, and include offline coverage. ChangesQuay STS workflow
Priority: ➖ Normal Estimated code review effort: 4 (Complex) | ~45 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant CI as CI job
participant Provision as quay-sts-provision
participant Test as quay-sts-test
participant Cleanup as quay-sts-cleanup
participant AWS as DEV AWS account
participant QE as QE OpenShift cluster
CI->>Provision: Start provisioning
Provision->>AWS: Validate account and create run-owned resources
Provision->>QE: Create namespace and save state
CI->>Test: Start STS test
Test->>QE: Validate operator and namespace scope
Test->>AWS: Use provisioned role for STS test
CI->>Cleanup: Run post-test cleanup
Cleanup->>QE: Validate ownership and delete namespace
Cleanup->>AWS: Delete owned role and bucket contents
Merge Risk: ⚪ Minimal · up to No concrete code risk blocks this design-only change; the runnable job and live enablement remain explicitly out of scope. Important Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional. ❌ Failed checks (1 error, 2 warnings)
✅ Passed checks (12 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 25 functions across 4 files. (10 skipped: 10 unsupported.) Full details: Ipv6 And Disconnected Network Test CompatibilityExplanation The new STS test step requires external network access. Its script runs Resolution IPv6 and disconnected network compatibility notice: This test may contain IPv4 assumptions or external connectivity requirements that will fail in IPv6-only disconnected environments. Please verify your test works on IPv6 by running an additional CI job: For parallel tests: Full details: No-Sensitive-Data-In-LogsExplanation The new provision and cleanup commands write Resolution Remove the two
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
@sudipshil9862: This pull request references [Jira Issue PROJQUAY-5850](https://redhat.atlassian.net/browse/PROJQUAY-5850), which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
[REHEARSALNOTIFIER] Note: If this PR includes changes to step registry files ( |
Summary
Add reusable provisioning, test and cleanup steps for Quay Operator STS testing on the existing QA-created Quay QE cluster, with per-run S3 storage and an IAM role in the Quay DEV AWS account. Supports quay/quay-operator#1324.
This is a draft for design review, not an enabled E2E job. The target is confirmed: the existing shared Quay QE cluster. These steps are intended for a separate
e2e-stsjob, keeping existing jobs unchanged. Job wiring and the isolated OLM installation/teardown adapter remain to be completed and reviewed with Nayan/Brady. Credential collection names are proposed and are not registered by this PR.Rationale and changes
make test-e2e-stsfrom the operator PR source. It does not mount DEV AWS provisioning credentials.No temporary-cluster workflow is added. The runnable
e2e-stsjob is pending the shared-cluster access, helper images and OLM adapter described below. No shared operator or cluster-wide CRD is installed, patched or deleted. The caller's approved OLM adapter must account for CRD compatibility and unmanaged competing operators before enablement.Review decisions before enablement
e2e-stsjob integration using these Chainsaw steps on the confirmed shared QE cluster; existing E2E jobs must remain unchanged.Validation
python3 hack/test-quay-sts.py).make ci-operator-checkconfigpassed.git diff --cached --checkpassed.Jira
https://issues.redhat.com/browse/PROJQUAY-5850
Backport
Not required; this adds CI step-registry entries.
Summary by CodeRabbit
This PR adds reusable OpenShift CI steps for Quay Operator STS testing on the shared Quay QE cluster. The steps provision run-owned S3 and IAM resources, validate cluster and operator scope, run the existing STS E2E test, and clean up resources with ownership checks.
The PR also adds offline tests for success, failure, collision, and cleanup paths. It does not enable an E2E job. OLM integration, credentials, helper images, and failure-path wiring remain pending. Live provisioning and OLM testing were not performed.