Repository navigation
fix(tests): pin the k3s installer to a release - #5223
Merged
Merged
Conversation
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
|
Label |
TaylorMutch
approved these changes
Nov 3, 2026
matthewgrossman
enabled auto-merge
November 3, 2026 21:44
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
shiju-nv
pushed a commit
to shiju-nv/OpenShell
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
copy-pr-bot Bot
pushed a commit
that referenced
this pull request
Nov 4, 2026
get.k3s.io serves the latest install.sh from k3s master, so the pinned checksum broke when upstream changed the script. Download install.sh from the release tag matching k3s_version instead and pin its checksum. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> Signed-off-by: Shiju <shiju@nvidia.com>
3 of 6 tasks
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.
Summary
The
ubuntu-k3stmachine environment downloadshttps://get.k3s.ioand checks it against a pinned sha256. get.k3s.io always serves the latestinstall.shfrom k3s master, so the pin broke when upstream changed the script. This downloadsinstall.shfrom the release tag that matchesk3s_versioninstead and pins that checksum.Related Issue
None. This is a CI build fix (no issue required for authors with write access, per
CONTRIBUTING.md). It unblocks #5137, #5138 and #5196.Failure: both
conformance-integration / E2E suites (conformance/conformance, ubuntu-k3s, k3s)and... k3s-hafail in provisioning at the Ansible task "Download K3s installer" intests/tmachine/ansible/playbooks/k3s.yaml, before any test runs.e5cc3b3d9dfc1662c2d9be6da5abc9a4cd317d6abc3a5ffc02e3dd3248207feeisinstall.shat k3s-io/k3s@2977c52.c2a2643dd7c259121a876d16538844c60928de3d38ae98f22f7b95a7ffcfab9d, which isinstall.shat k3s-io/k3s@2b723db (Fix bashisms in install.sh k3s-io/k3s#14948, "Fix bashisms in install.sh", merged 2026-11-03 19:51 UTC). That upstream change only swapstypeforcommand -vand{1..3}for1 2 3.Changes
https://raw.githubusercontent.com/k3s-io/k3s/v{{ k3s_version | urlencode }}/install.sh, which renders to.../v1.29.15%2Bk3s1/install.sh(tag commit k3s-io/k3s@35a4723).3ce239d57d43b2d836d2b561043433e6decae8b9dc41f5d13908c0fafb0340cd, and add a comment to update the checksum wheneverk3s_versionchanges. A version bump changes the URL, so a stale checksum fails loudly.Behaviour differences between the v1.29.15+k3s1 script and the previously pinned master script, for how this playbook uses it (
INSTALL_K3S_VERSION,server --disable=servicelb --disable=traefik, Ubuntu 24.04 with systemd):INSTALL_K3S_VERSIONhandling are identical.+(.../download/v1.29.15+k3s1/k3s) rather than%2B. Both forms return 200 from GitHub today.ExecStartPrethat fails ifnm-cloud-setup.serviceis enabled (not present on the Ubuntu image) and no explicitUser=root(the default for system units).Testing
ansible-playbook --syntax-checkpasses fortests/tmachine/ansible/playbooks/k3s.yamlget_urltask locally withk3s_version=1.29.15+k3s1: the URL renders with%2B, downloads, and matches the pinned checksumubuntu-k3sconformance rows (k3s,k3s-ha) pass in CIChecklist