ci-operator-configresolver: Add upstream config resolver#5253
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: automatic mode |
|
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: Enterprise Run ID: 📒 Files selected for processing (6)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
🚧 Files skipped from review as they are similar to previous changes (5)
📝 WalkthroughWalkthroughAdds optional upstream integrated-stream resolver support to configresolver by introducing a ChangesUpstream integrated-stream resolver
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 14 | ❌ 3❌ Failed checks (2 warnings, 1 inconclusive)
✅ Passed checks (14 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
/test e2e |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: danilo-gemoli, droslean 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 |
|
Tests from second stage were triggered manually. Pipeline can be controlled only manually, until HEAD changes. Use command to trigger second stage. |
|
/hold |
|
/retest-required |
7773952 to
85be9fb
Compare
|
/test e2e |
|
New changes are detected. LGTM label has been removed. |
|
@danilo-gemoli: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions 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 kubernetes-sigs/prow repository. I understand the commands that are listed here. |
e2etests use a realci-operator-configresolverthat is expected to find ISocp/X.Ywithin the cluster the test is running on, but these streams exist onapp.cionly.As a consequence of that, we experience failures like this.
This PR overcomes the problem by adding a new parameter on
ci-operator-configresolver:that
e2es set to the production endpointhttps://config.ci.openshift.org/.The upstream resolver is used to retrieve information about the integrated streams.
Upstream Resolver Support for ci-operator-configresolver
This PR adds optional upstream resolution for OpenShift “integrated streams” to help e2e tests pass in isolated clusters that don’t contain the
ocp/X.Yimage streams (those exist onapp.ci). It letsci-operator-configresolverdelegate integrated-stream lookups to a production upstream resolver when configured, while keeping existing behavior unchanged by default.What changed
ci-operator-configresolver(cmd/ci-operator-configresolver/main.go)--upstream-resolver-address.streamCache/integrationStreamCachefor/integratedStream.configresolver.LocalIntegratedStream) when no upstream is configured, or--upstream-resolver-addressis set.e2e framework + tests
test/e2e/framework/framework.gowithConfigResolverOptions.UpstreamResolverAddress, and passed it through toci-operator-configresolveras--upstream-resolver-address.configservice (api.URLForService("config")), so integrated stream lookups can succeed even when the test cluster lacks those streams.testCase := testCase).Additional e2e adjustment
test/e2e/multi-stage/integration-releases.yaml’sverify-releases“latest” step for4.18to inspect/release-manifests/release-metadatainstead of greppingcluster-version-operator versionoutput.Impact
--upstream-resolver-addressbehave as before.ocp/X.Ystreams in the test cluster.