Repository navigation
deps(helm): Helm CLI 3.22.1 in the backend image and in CI (#600) - #701
Merged
Merged
Conversation
The backend image installed Helm 3.20.1, while CI linted and tested the chart with 3.17.0 (pull-request.yml, e2e.yml, helm-release.yml). Both now use 3.22.1, so the chart is checked with the Helm that deploys the stacks. The Dockerfile now verifies the download against SHA-256 checksums pinned in the file (amd64 and arm64, from the v3.22.1 release notes and get.helm.sh), so a changed tarball fails the build. It used to pipe curl straight into tar. Release notes 3.18 to 3.22: no change to the flags the deployer uses (upgrade --install, --wait, --timeout, --create-namespace, --kubeconfig, --repo, --version, --skip-crds, uninstall, rollback --revision, history --max, registry login --password-stdin). Relevant fixes: registry login with a scheme (3.19), uninstall supersedes deployed releases (3.20), rollback with missing resources (3.22). Checked: the helm stage builds for amd64 and arm64 (checksums OK), the backend image reports v3.22.1, make helm-lint and make helm-test pass with Helm 3.22.1, and the deployer tests pass with -race. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #600
Summary
The backend image installed Helm 3.20.1, while CI linted and tested the chart with 3.17.0. Both now use 3.22.1, the latest 3.x release, so the chart is checked with the Helm that deploys the stacks.
backend/Dockerfile:HELM_VERSION=3.22.1. The download is now checked against SHA-256 checksums pinned in the file for amd64 and arm64, so a changed tarball fails the build. It used to pipecurlstraight intotar. The checksums come from the v3.22.1 release notes and matchget.helm.sh.pull-request.yml,e2e.yml,helm-release.yml:azure/setup-helmwithversion: 'v3.22.1'.To update Helm later, change
HELM_VERSIONand the two checksums together; the Dockerfile comment says where to find them.Release notes, 3.18 to 3.22
No change to the commands or flags the deployer uses (
upgrade --install,--create-namespace,--timeout,--repo,--version,-f,--skip-crds,uninstall --wait,rollback,status,history --max,get values --revision,list,registry login --password-stdin,--kubeconfig). Relevant fixes:registry loginwith a scheme in the host works again after a 3.18 regression (the deployer passes the host only).uninstallsupersedes deployed releases.Helm 4 (4.3.1) is out too. Moving to it is a major upgrade and is not part of this PR.
Tests
helmstage builds forlinux/amd64andlinux/arm64:sha256sum -creportsOKfor both, andhelm versionreportsv3.22.1+gd6c1a0e.helm versioninside it reportsv3.22.1+gd6c1a0e.make helm-lintandmake helm-testpass with Helm 3.22.1, run inside the image.go test ./internal/deployer/... -racepasses.deployer/helm.gowith Helm 3.22.1 andloadtest/chart/loadtest-tiny. Deploy (revision 1), redeploy (revision 2),status -o json,history -o json,get values --revision 1, rollback to 1 (back to 1 replica, revision 3) anduninstall --waitall work. I did not run them through the full app.🤖 Generated with Claude Code