Release v0.33.2 - #1177
Conversation
WalkthroughThis update revises container image tags and digests across multiple configuration files, incrementing versions for several Kubernetes-related components and services. All changes are limited to image version and digest updates, with no modifications to logic, configuration structure, or exported entities. Changes
Possibly related PRs
Suggested reviewers
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (15)
🚧 Files skipped from review as they are similar to previous changes (15)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (2)
packages/system/bucket/images/s3manager.tag (1)
1-1: Tag immutability concern: digest changed while keepingv0.5.0Retagging the same semantic version with a different digest makes builds non-deterministic and can break reproducibility/debugging. If the image content changed (even rebuild-only), consider either:
• bumping the tag (e.g.v0.5.1orv0.5.0-<date>)
• or enforcing an immutable-tag policy and using only the digest downstream.Please verify this aligns with your release process and downstream caching/CD expectations.
packages/system/dashboard/charts/kubeapps/templates/dashboard/configmap.yaml (1)
79-79: Avoid hard-coding release version inside templateHard-coding
"v0.33.2"requires manual edits every release and risks drift. Use the chart’s version value instead:- "appVersion": "v0.33.2", + "appVersion": {{ $.Chart.AppVersion | quote }},This stays in sync with
Chart.yamland upstream tooling.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (15)
packages/apps/kubernetes/images/cluster-autoscaler.tag(1 hunks)packages/apps/kubernetes/images/kubevirt-cloud-provider.tag(1 hunks)packages/apps/kubernetes/images/kubevirt-csi-driver.tag(1 hunks)packages/core/installer/values.yaml(1 hunks)packages/core/testing/values.yaml(1 hunks)packages/extra/bootbox/images/matchbox.tag(1 hunks)packages/system/bucket/images/s3manager.tag(1 hunks)packages/system/cozystack-api/values.yaml(1 hunks)packages/system/cozystack-controller/values.yaml(1 hunks)packages/system/dashboard/charts/kubeapps/templates/dashboard/configmap.yaml(1 hunks)packages/system/dashboard/values.yaml(2 hunks)packages/system/kamaji/values.yaml(1 hunks)packages/system/kubeovn-webhook/values.yaml(1 hunks)packages/system/kubeovn/values.yaml(1 hunks)packages/system/kubevirt-csi-node/values.yaml(1 hunks)
🧰 Additional context used
🧠 Learnings (8)
📓 Common learnings
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
packages/system/dashboard/values.yaml (1)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
packages/system/bucket/images/s3manager.tag (2)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
packages/system/cozystack-controller/values.yaml (2)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
packages/extra/bootbox/images/matchbox.tag (1)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
packages/system/cozystack-api/values.yaml (2)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
packages/core/testing/values.yaml (1)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
packages/core/installer/values.yaml (2)
Learnt from: NickVolynkin
PR: cozystack/cozystack#1117
File: packages/apps/mysql/Makefile:8-8
Timestamp: 2025-06-26T04:29:24.830Z
Learning: The cozystack project uses yq v4+ on their CI runner, so yq v4 syntax (-o json --indent 4) is compatible and version checks are not needed.
Learnt from: NickVolynkin
PR: cozystack/cozystack#1120
File: packages/apps/ferretdb/README.md:35-37
Timestamp: 2025-07-02T09:58:11.406Z
Learning: In the cozystack repository, the maintainer NickVolynkin prefers to keep realistic-looking example credentials in README documentation rather than using generic placeholders like <ACCESS_KEY>, even though they are just examples and not real secrets.
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: pre-commit
- GitHub Check: Prepare environment
🔇 Additional comments (13)
packages/system/kubeovn/values.yaml (1)
65-67: Confirm GHCR manifest availability for the updated digestWe attempted an unauthenticated HTTP check against the GHCR v2 API and received a 401 response, which means we need to authenticate before verifying the manifest. Please manually confirm that the new digest has been pushed to
ghcr.io/cozystack/cozystack/kubeovnfor all required architectures—otherwise you’ll hitImagePullBackOffduring rollout.You can verify with an authenticated registry client, for example:
# Log in to GHCR (requires a valid GHCR token in $CR_PAT) echo "$CR_PAT" | docker login ghcr.io -u <USERNAME> --password-stdin # Inspect the manifest docker manifest inspect ghcr.io/cozystack/cozystack/kubeovn@sha256:17b2286d619a0f8d8f0259dacc6b1fc0920ab6223b0b85e326c35f81b772fab6Or with
crane(after logging in):crane auth login ghcr.io --username <USERNAME> --password-stdin < $CR_PAT crane digest ghcr.io/cozystack/cozystack/kubeovn@sha256:17b2286d619a0f8d8f0259dacc6b1fc0920ab6223b0b85e326c35f81b772fab6If the manifest is missing, push the updated image before rolling out.
packages/apps/kubernetes/images/cluster-autoscaler.tag (1)
1-1: Verify digest-to-tag correctness for 0.25.2The tag was bumped to
0.25.2but the digest is identical to the previous0.25.1update in earlier commits. Upstream typically publishes a new digest per tag; please confirm that
sha256:3a817043…is indeed the canonical digest for0.25.2and not left over from0.25.1.If it’s stale, regenerate the file with the correct digest to avoid pull-time supply-chain surprises.
packages/system/cozystack-api/values.yaml (1)
2-2: Image bump looks goodVersion and digest move in lock-step from
v0.33.1→v0.33.2. No other value changes detected. ✅packages/system/kamaji/values.yaml (1)
6-6: Kamaji image correctly updatedThe tag and digest now reference
v0.33.2; repository path and pull policy remain untouched. All good.packages/system/kubeovn-webhook/values.yaml (1)
3-3: Webhook image bump acknowledgedConsistent shift to
v0.33.2with fresh digest. 👍packages/apps/kubernetes/images/kubevirt-csi-driver.tag (1)
1-1: Digest reused; please double-checkSimilar to the autoscaler file, the digest for
0.25.2is unchanged from the prior0.25.1.
Confirm that upstream intentionally re-tagged the same image, or update the digest if a new one exists.packages/core/testing/values.yaml (1)
2-2: Digest verification requires authenticated registry access
Automated checks didn’t return a manifest digest—GHCR demands authentication for HEAD requests. Please manually verify that the digest in packages/core/testing/values.yaml matches the tag:• Run locally after logging in to GHCR:
docker login ghcr.io docker manifest inspect ghcr.io/cozystack/cozystack/e2e-sandbox:v0.33.2 \ --verbose \ | grep -Eo "sha256:[0-9a-f]{64}"Confirm it equals
sha256:692a839c0c020d4d4dfb521ec7510eeec9218e235eb2bc90966904f2e639215a.• Or with Crane (after
crane auth login ghcr.io):crane digest ghcr.io/cozystack/cozystack/e2e-sandbox:v0.33.2Expect the same SHA256 digest.
A mismatched or stale digest will break reproducible builds—please double-check.
packages/extra/bootbox/images/matchbox.tag (1)
1-1: Verify Matchbox image digestEnsure the PXE boot flow isn’t broken by confirming the Matchbox tag’s digest matches the expected value. You can verify this locally using one of the following approaches:
- Using crane (install via
go install github.com/google/go-containerregistry/cmd/crane@latest):#!/usr/bin/env bash set -euo pipefail tag="ghcr.io/cozystack/cozystack/matchbox:v0.33.2" expected="sha256:42bda89832ec98b054c5a62e04d67977ae7ede8111fdc96cc32baedf2378f07c" actual=$(crane digest "$tag") if [[ "$actual" != "$expected" ]]; then echo "Digest mismatch: expected $expected, got $actual" exit 1 fi- Using curl & jq (if you don’t have crane installed):
#!/usr/bin/env bash set -euo pipefail repo="cozystack/cozystack/matchbox" tag="v0.33.2" expected="sha256:42bda89832ec98b054c5a62e04d67977ae7ede8111fdc96cc32baedf2378f07c" manifest=$(curl -s -H "Accept: application/vnd.docker.distribution.manifest.v2+json" \ "https://ghcr.io/v2/${repo}/manifests/${tag}") actual=$(echo "$manifest" | jq -r '.config.digest') if [[ "$actual" != "$expected" ]]; then echo "Digest mismatch: expected $expected, got $actual" exit 1 fiPlease run one of these in your local environment and confirm the digest matches.
packages/apps/kubernetes/images/kubevirt-cloud-provider.tag (1)
1-1: Confirm provider image digest manuallyDigest validation ensures the specified SHA matches the published image and prevents silent pull failures on downstream clusters.
Please verify that the digest for
ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.25.2
matches
sha256:e522960064290747a67502d4e8927c591bdb290bad1f0bae88a02758ebfd380fYou can run, for example:
crane digest ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.25.2or
docker pull ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.25.2 docker inspect --format='{{index .RepoDigests 0}}' ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.25.2Location:
- packages/apps/kubernetes/images/kubevirt-cloud-provider.tag:1
packages/system/kubevirt-csi-node/values.yaml (1)
3-3: Ensure all charts reference the same CSI driver version
0.25.2is set here; double-check that every Helm chart or manifest (e.g. controller-side objects, RBAC) referencingkubevirt-csi-driverwas bumped as well to avoid split-version rollouts.packages/core/installer/values.yaml (1)
2-2: Image tag bump looks good.
v0.33.2+ digest pinning keeps the release reproducible and tamper-resistant.
No further issues spotted in this stanza.packages/system/cozystack-controller/values.yaml (1)
2-5: Consistent version & digest update – all good.Tag, digest and the explicit
cozystackVersionfield are all bumped tov0.33.2, keeping the controller in sync with the release.
Nothing else to flag.packages/system/dashboard/values.yaml (1)
22-23: Dashboard images updated coherently.Both
dashboardandkubeapps-apisimages now point tov0.33.2with pinned digests – release alignment looks correct and no mis-matches detected.Also applies to: 40-41
2783dee to
83022a3
Compare
Signed-off-by: cozystack-bot <217169706+cozystack-bot@users.noreply.github.com>
83022a3 to
50f3089
Compare
This PR prepares the release
v0.33.2.Summary by CodeRabbit