-
Notifications
You must be signed in to change notification settings - Fork 17
NO-JIRA: Updates CI images to use RHEL10 for early feedback #89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -12,8 +12,7 @@ RUN git clone --depth 1 --branch $RELEASE_BRANCH https://github.com/openshift/ex | |
| RUN go mod vendor | ||
| RUN go build -mod=vendor -tags $GO_BUILD_TAGS -o _output/external-secrets main.go | ||
|
|
||
| FROM registry.access.redhat.com/ubi9-minimal:9.4 | ||
|
|
||
| FROM registry.ci.openshift.org/rhcos-devel/ocp-4.21-10.1:4.21.0-ec.3-x86_64 | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: # First, let's look at the operand.Dockerfile file to see the full context
cat -n images/ci/operand.DockerfileRepository: openshift/external-secrets-operator Length of output: 214 🏁 Script executed: # Also check the referenced images/ci/Dockerfile for comparison
cat -n images/ci/DockerfileRepository: openshift/external-secrets-operator Length of output: 214 🏁 Script executed: # Search for any other uses of these base images in the repo
rg "registry.ci.openshift.org" --type dockerfile -B 1 -A 1Repository: openshift/external-secrets-operator Length of output: 214 🌐 Web query:
💡 Result: Short answer: cgo-built Go binaries are not guaranteed to be 100% ABI‑stable across RHEL major releases because they link to the system C runtime and other native libraries. In practice:
Practical recommendations
Sources
If you want, tell me (a) whether your cgo binary is built static or dynamically, and (b) which libraries/symbols it depends on (ldd / objdump -T), and I’ll check likely compatibility and suggest next steps. 🌐 Web query:
💡 Result: Short answer
RHEL 9 vs RHEL 10 compatibility considerations
Practical guidance
Sources
🌐 Web query:
💡 Result: Short answer: Early Candidate (EC / candidate) RHCOS images are pre-release/testing builds and are not intended for production use — use GA images from the fast/stable channels for production clusters. See Red Hat’s release-channel guidance (candidate = release-candidate/testing; fast/stable = production-supported) and Red Hat examples that use EC images for testing/labs only. [1][2] References
🌐 Web query:
💡 Result: Short guidance and practical best practices when your build (builder) stage OS/version differs from the runtime stage in a container image:
If you want, tell me the language/toolchain (Go, Java, Python, Node, C/C++) and the builder/runtime images you currently use and I’ll give concrete Dockerfile patterns and exact flags to avoid ABI/runtime mismatches. Update to stable RHCOS GA image and verify runtime compatibility before deployment. The operand binary is built with
Consider aligning the builder stage to RHEL 10 to match the final runtime and follow multi-stage build best practices. 🤖 Prompt for AI Agents |
||
| ARG SRC_DIR=/go/src/github.com/openshift/external-secrets | ||
| COPY --from=builder $SRC_DIR/_output/external-secrets /bin/external-secrets | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: openshift/external-secrets-operator
Length of output: 214
🏁 Script executed:
Repository: openshift/external-secrets-operator
Length of output: 214
🏁 Script executed:
Repository: openshift/external-secrets-operator
Length of output: 214
🏁 Script executed:
Repository: openshift/external-secrets-operator
Length of output: 214
🌐 Web query:
OpenShift 4.21 early candidate ec.3 tag stability registry.ci.openshift.org💡 Result:
Short answer: The 4.21 candidate tag ec.3 is present as an early-candidate payload on the CI registries, but it is a CI/preview (not GA) payload and can be changed or replaced — treat it as unstable for production. Evidence: the release dashboards show 4.21.0-ec.3 accepted/listed, and the candidate-4.21 channel listing shows candidate-4.21 -> 4.21.0-ec.3 (last modified Nov 28, 2025). [1][2][3]
Sources:
🌐 Web query:
OpenShift CI pipeline base image versioning ec early candidate tags💡 Result:
Short answer: In OpenShift CI and release naming, "ec" in tags means an Early‑Candidate / Early‑Access pre‑release build. You’ll see tags like 4.21.0-ec.0 or component tags such as 4.12.0-ec.3 used for testing and preview releases (not final GA). Those builds appear in CI/release mirrors and in component lists and rpm-ostree/base-image version strings; they should be treated as pre-release/test images and referenced by full tag or digest when pinning in pipelines. [1][2][3]
Sources:
Address early-candidate image instability risk in CI pipeline.
The base image tag
4.21.0-ec.3is an Early-Candidate (pre-release) build, not a GA release. EC tags are explicitly marked as CI/preview payloads and can be changed, replaced, or removed. Using pre-release images for CI pipelines introduces instability risk. Verify whether this is intentional for testing purposes or if a stable release tag should be used instead. If early-candidate images are required, ensure the pipeline tolerates potential changes to the image or has fallback mechanisms.🤖 Prompt for AI Agents