Repository navigation
CI: pin and verify sccache via a shared composite action - #3248
Merged
Merged
Conversation
Signed-off-by: Ralf Juengling <rjuengling@nvidia.com>
Contributor
Signed-off-by: Ralf Juengling <rjuengling@nvidia.com>
juenglin
marked this pull request as ready for review
October 27, 2026 20:52
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Pinned sccache installation .github/actions/install-sccache/action.yml |
The composite action supports Linux x86_64 and aarch64, verifies the pinned release archive with architecture-specific checksums, installs sccache, exports SCCACHE_PATH, and reports the installed version. |
Linux workflow integration .github/workflows/build-wheel.yml, .github/workflows/test-sdist-linux.yml |
Both workflows call the local installation action. Their existing build conditions remain unchanged. |
Suggested reviewers: rwgk, andy-jost, rparolin
Priority:
Change: Other
Merge Risk: 
Minimal · up to 57628
-
The pinned installer is wired into both Linux workflows, with no identified issue requiring a fix before merge.
Comment @coderabbitai help to get the list of available commands.
webpki-roots 1.0.10 removes only emSign ECC Root CA - G3 and keeps the other emSign roots, so grepping for 'emSign' would reject a fixed root list. Signed-off-by: Ralf Juengling <rjuengling@nvidia.com>
Contributor
Author
|
/ok to test 5762894 |
Contributor
|
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.
Description
Refs #3195
The eMudhra/emSign CA advisory is about TLS clients that still trust the affected roots. Refreshing the OS trust store and certifi (#3195) does not cover clients that ship their own root list. sccache is one of those clients in our CI: in the wheel builds it reads and writes compiled objects through the GitHub Actions cache over HTTPS. A release built with an embedded
webpki-roots/webpki-root-certslist from before the fix would keep trusting the affected roots regardless of the runner's trust store.Across
mozilla/sccacheand the downstreamrapidsai/sccachefork (which rebases onto each upstream0.x.0release), only the0.18.0release series defers purely to the OS trust store:emSign ECC Root CA - G3)?<= v0.17.0(includingrapidsai/sccache<= v0.17.0-rapids.4)reqwest 0.12withrustls-tls, embeddingwebpki-roots 1.0.2webpki-roots 1.0.2regardless of OSca-certificatesv0.18.0(mozilla/sccachev0.18.0,rapidsai/sccachev0.18.0-rapids.0..7)reqwest 0.13withrustls-platform-verifieronly (no embedded roots)v0.19.0(mozilla/sccachev0.19.0, commit2eeea913)reqwest 0.13calling.tls_certs_merge(...)withwebpki-root-certs 1.0.9webpki-root-certs 1.0.9(pre-1.0.10fix) into the platform verifier, so updating OSca-certificatesdoes not distrust the rootBefore this PR, neither workflow was protected against moving off
0.18.0:build-wheel.ymlpipedrapidsai/sccachereleases/latestdirectly intosudo tar -C /usr/local/binwith no version pin and no SHA-256 check. As soon asrapidsai/sccacherebases onto upstreamv0.19.0(unlesswebpki-root-certsis bumped to>= 1.0.10),releases/latestwill silently serve a binary that trusts the compromised root again.test-sdist-linux.ymlusedmozilla-actions/sccache-actionwithmozilla/sccachev0.18.0(verified only against the.sha256file fetched from the same release URL), where a routine bump tov0.19.0would reintroduce the affected root.This PR pins a known-good binary in one place and makes any change to it deliberate:
.github/actions/install-sccache, which downloadsrapidsai/sccachev0.18.0-rapids.7forx86_64oraarch64, verifies its SHA-256 digest before extracting, installs it to/usr/local/bin, exportsSCCACHE_PATH, and logssccache --version.build-wheel.yml, replacing the unpinnedreleases/latestdownload.test-sdist-linux.yml, replacingmozilla-actions/sccache-action. This job only uses sccache's local disk cache, so it does not need the Actions cache token that action exported.greprecipe and pass criteria for the extracted binary. Also record why not to switch tomozilla/sccachev0.19.0.The pinned hashes match both the downloaded tarballs and the
.sha256files published on the release.Checklist
linux-64andlinux-aarch64and by the sdist job.)