chore(deps): update container images - #73
Conversation
33ff18d to
0187180
Compare
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
0187180 to
7030a28
Compare
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
Amber reviewStatus: Complete VerdictRequest changes (posted as a COMMENT event). This is a routine Renovate digest/version bump, but two issues need attention before merge: (1) it bumps the OpenAPI generator from Amber here. The image-digest bumps within this diff are internally consistent (every Go builder → Findings[Major] OpenAPI generator bumped without regenerating the committed SDK — [Major] Branch is based on stale [Info] Digest consistency within the diff is correct — All Go builder stages move uniformly to Cross-PR coordinationI reviewed the 23 other open PRs against
Findings Summary (highest severity first)
Convention Checklist
|
jsell-rh
left a comment
There was a problem hiding this comment.
Verdict
Request changes (posted as a COMMENT event). This is a routine Renovate digest/version bump, but two issues need attention before merge: (1) it bumps the OpenAPI generator from v7.16.0 to v7.24.0 without regenerating the committed Go SDK, so the sdk-drift-check CI job will fail; and (2) the branch is based on stale main, which has since migrated the Go runtime images to distroless hi/static and advanced the Node.js digests, so the Docker base-image hunks are obsolete and must not be resolved in a way that reverts that migration.
Amber here. The image-digest bumps within this diff are internally consistent (every Go builder → aef1550, every Go runtime → eb29e56, no stale references left behind), so the mechanical change is clean; the risks are the generator/SDK drift and the branch being behind a base-image architecture change that already landed on main.
Findings
[Major] OpenAPI generator bumped without regenerating the committed SDK — components/api-server/Dockerfile.openapi:3
The generator is bumped v7.16.0 → v7.24.0 (8 minor versions), but the committed generated client is not regenerated. components/api-server/pkg/api/openapi/.openapi-generator/VERSION still reads 7.16.0, and make generate (rm -rf pkg/api/openapi then copy-back) rewrites that file to 7.24.0. The .github/workflows/sdk-drift-check.yml job triggers on Dockerfile.openapi changes, runs make generate generate-sdk, and fails on any diff — so this will fail CI at minimum on the VERSION file, and likely on generator output changes across 8 minor releases.
Fix: cd components/api-server && make generate generate-sdk, commit the result, and review the regenerated diff for any behavioral/shape changes in the client before merging. Confidence: High.
[Major] Branch is based on stale main; base-image hunks are obsolete and risk reverting the distroless migration — components/api-server/Dockerfile:20, components/cli/Dockerfile:13, components/control-plane/Dockerfile:20, components/web-console/Dockerfile:1,33
Current main no longer contains the lines this PR edits. On main, the Go runtime images for api-server, cli, and control-plane are registry.access.redhat.com/hi/static:1787099997@sha256:f4d5109b… (a distroless static migration), not hi/go:1.26.5, and the builder stage is a single hi/go:1.26.5@sha256:eb29e565… line (no separate -builder digest). The Node.js digests on main are already newer (…e2a04f74 builder / …07b0f6cf runtime) than both this PR's old and new values. Merging/rebasing this diff naively would revert main to hi/go runtimes and downgrade Node.js. Renovate should rebase this branch onto current main; after rebase, re-review to confirm the hi/static runtimes are preserved and only the intended digests move. Confidence: High.
[Info] Digest consistency within the diff is correct — All Go builder stages move uniformly to aef1550… and all Go runtime stages to eb29e56…; no dangling references to the old digests remain in the tree. Good hygiene on the "image references consistent across the stack" convention (as evaluated against this diff's own base).
Cross-PR coordination
I reviewed the 23 other open PRs against main. Comparing goals, ownership boundaries, data models, interfaces, and required change order:
- No material design conflict found with any open PR. The other dependency PRs are scoped to different artifacts: #75 (
chore(deps): update go indirect dependencies) touches onlygo.mod/go.sum; #188/#189 (@patternfly/react-core/react-icons) and #135 (react-intl) touch JS package manifests, not the Node.js base-image digest. #201 ([HYPERSHELL-45]Red Hat OpenShell images) changes the gateway/supervisor runtime images, not these builder/runtime base images — a disjoint concern. - File overlap without design conflict: #194 (control-plane Helm adoption), #209 and #214 (dashboard UI) edit
components/control-plane/Dockerfile/components/web-console/Dockerfile, but those are additive changes on the current-mainDockerfile structure. Because this PR is stale (see Major finding above) and must be rebased, the overlap is an ordinary rebase concern, not a competing design or interface change. I am not reporting these as conflicts on file overlap alone. - One change-order coordination point (non-blocking): #151 (
spec(control-plane): gate gateway re-provisioning…) carries regenerated OpenAPI SDK output (components/api-server/pkg/api/openapi/...) produced by the current (v7.16.0) generator. Because this PR changes the generator version itself, whichever of #73 and #151 merges second will need its committed SDK regenerated against the then-active generator so thesdk-drift-checkpasses. Maintainers should decide the merge order (recommend merging #73 with a regenerated SDK first, then rebasing/regenerating #151) rather than letting both land with mismatched generator output. This is coordination, not a design conflict.
Findings Summary (highest severity first)
- [Major] OpenAPI generator bumped to v7.24.0 without regenerating the committed SDK;
sdk-drift-checkwill fail - Convention: OpenAPI client viamake generateonly (Dockerfile.openapi:3) - [Major] Branch based on stale
main; base-image hunks are obsolete and risk reverting thehi/staticdistroless migration / downgrading Node.js - Architecture / release order (Dockerfile:20, web-console/Dockerfile:1,33) - [Info] In-diff image digest consistency is correct; no stale references remain - Image consistency
Convention Checklist
| Convention | Result |
|---|---|
OpenAPI client regenerated via make generate (not stale) |
Fail |
| Image references consistent across the stack (within diff base) | Pass |
Image references consistent with current main |
Fail (stale base) |
| Conventional commit message | Pass |
| FROM registry.access.redhat.com/hi/go:1.26.5-builder@sha256:aef155087940a9221c59ca48ad8af371a4c1a46b05f0283737149cb00ef484b3 AS go-toolchain | ||
|
|
||
| FROM openapitools/openapi-generator-cli:v7.16.0@sha256:e56372add5e038753fb91aa1bbb470724ef58382fdfc35082bf1b3e079ce353c | ||
| FROM openapitools/openapi-generator-cli:v7.24.0@sha256:5bf3dc75f764c584da8e3344c51b2f3f1e74703461d46a035b5ac1d31515cc88 |
There was a problem hiding this comment.
[Major] Regenerate the committed SDK for this generator bump. Bumping openapi-generator-cli v7.16.0 -> v7.24.0 changes the tool that produces components/api-server/pkg/api/openapi. That directory's .openapi-generator/VERSION still says 7.16.0, and make generate (which rm -rf pkg/api/openapi then copies the container output back) will rewrite it to 7.24.0. .github/workflows/sdk-drift-check.yml runs make generate generate-sdk on any Dockerfile.openapi change and fails on drift, so this bump will fail CI until the SDK is regenerated. Run cd components/api-server && make generate generate-sdk, commit, and review the regenerated diff for behavioral changes before merge.
| RUN cd components/control-plane && CGO_ENABLED=0 go build -mod=mod -ldflags="-s -w" -o /workspace/hypershell-controller ./cmd/hypershell-controller | ||
|
|
||
| FROM registry.access.redhat.com/hi/go:1.26.5@sha256:55d95d0bd29598f821931dec7155efd331068bdd84162d7d4b2e7ad66ec6c124 | ||
| FROM registry.access.redhat.com/hi/go:1.26.5@sha256:eb29e565caf76cf408a77a73548a3ed62e00e3516c17d02d5f36838aea69a605 |
There was a problem hiding this comment.
[Major] This line no longer exists on main. Current main uses registry.access.redhat.com/hi/static:1787099997@sha256:f4d5109b... (distroless static) for the control-plane runtime, not hi/go:1.26.5. This branch is based on stale main, so this hunk is obsolete; if resolved naively during rebase it would revert the hi/static migration. Rebase onto current main and re-review to confirm the distroless runtime is preserved.
| && cp -R components/web-console/build/client /tmp/web-console/public | ||
|
|
||
| FROM registry.access.redhat.com/hi/nodejs:24.18.1@sha256:b24c3fce1b2803aa622d1bd7add354d0974528fdf1f16f1303226bfa5e3c6666 | ||
| FROM registry.access.redhat.com/hi/nodejs:24.18.1@sha256:24bd0d73317d0da304af77ae6bc58c49a2bea40b2a40575d83c9d82c4d7c2f29 |
There was a problem hiding this comment.
[Major] Stale digest relative to main. main already pins the Node.js runtime at sha256:07b0f6cf... (and the builder at sha256:e2a04f74...), both newer than the value this PR sets. Merging this hunk would downgrade Node.js. Rebase onto current main so Renovate re-derives the correct digests.
This PR contains the following updates:
v7.16.0→v7.24.055d95d0→eb29e56fe0672d→aef1550b24c3fc→24bd0d763f3ae9→41ec046Warning
Some dependencies could not be looked up. Check the warning logs for more information.
Configuration
📅 Schedule: (in timezone America/New_York)
* 0-7 * * 1)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
To execute skipped test pipelines write comment
/ok-to-test.Documentation
Find out how to configure dependency updates in MintMaker documentation or see all available configuration options in Renovate documentation.