docs: Document SHA-256 checksum verification for the runpodctl install script and self-update - #709
Conversation
There was a problem hiding this comment.
(Line 44)
PR #303 added SHA-256 checksum verification to install.sh before extraction; its calculate_sha256 helper uses sha256sum or shasum and fails closed with "No SHA-256 checksum tool found" when neither is present, and the new header requirement notes sha256sum on Linux or shasum on macOS. This note documents that new prerequisite.
Source: runpod/runpodctl#303
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
@Promptless the triggered PR is merged. Check if all the changes have been added to the docs. |
|
Thanks! Since runpod/runpodctl #303 is now merged, I'm reviewing the docs to confirm all of its user-facing changes are captured here. I'll follow up with what's covered and anything still needed. |
|
Update: research is done. The note in this PR accurately covers the install-script checksum requirement (both Linux and macOS). One gap turned up — the |
|
Scoped: only the |
| ## Description | ||
|
|
||
| The `update` command downloads and installs the latest version of `runpodctl`. After updating, verify the installation with [`runpodctl version`](/runpodctl/reference/runpodctl-version). | ||
| The `update` command downloads the latest version of `runpodctl` and verifies it against its SHA-256 checksum before replacing the installed binary. Verification always runs. If it fails, the update aborts and leaves your existing binary in place. After updating, verify the installation with [`runpodctl version`](/runpodctl/reference/runpodctl-version). |
There was a problem hiding this comment.
PR #303 added self-update checksum verification in cmd/update.go: the update command downloads the release archive and its checksums_<version>_sha256.txt asset (via DownloadBytes/findAsset), then calls verifyArchiveChecksum (verifyFileChecksum, using stdlib crypto/sha256) before extracting/installing the new binary. Verification always runs (no flag or env var to skip it); on failure (missing checksum asset, malformed digest, or mismatch) the update returns an error before the existing binary is replaced.
Source: https://github.com/runpod/runpodctl/blob/c05a2bb71b5cf736b0477e0531f66027dc88cfc6/cmd/update.go#L289
|
Thanks for flagging this. It now explains that One heads-up: this PR is still open (not yet merged) on our side — the merged change is the upstream |
Open this suggestion in Promptless to view citations and reasoning process
runpod/runpodctl PR #303 added fail-closed SHA-256 checksum verification to both user-facing paths that download the CLI, so this suggestion documents both:
runpodctl/overview.mdx): a note on the "Install script" tab explaining that the script verifies the downloaded release against its SHA-256 checksum before installing, and so needssha256sum(Linux) orshasum(macOS) to be present. These are preinstalled in most environments, but the install aborts on minimal images without one.runpodctl/reference/runpodctl-update.mdx): a note thatrunpodctl updateverifies the downloaded release against its SHA-256 checksum before replacing the installed binary, that verification always runs, and that a failed check aborts the update and leaves the existing binary in place. This path computes the checksum in-process, so it needs no external checksum tool.Trigger Events
Tip: Tag @Promptless in GitHub PR comments to guide documentation changes during code review 🐙