Repository navigation
Conversation
Fetch cuda_sanitizer_api from the same pinned redistrib manifest as the rest of the mini CTK, rather than from whatever release ci/tools/guess_latest.sh scrapes from the redist directory listing. Remove guess_latest.sh, which has no other users.
|
@coderabbitai full review |
Action performed
|
|
No actionable comments were generated in the recent review. Summary
Change: Bug fix Merge Risk:
|
verify-metadata used to warn and pass when a public-server CUDA version had no pinned manifest hash, so the 13.4.2 -> 13.5.0 bump ran unpinned. Fail closed instead, with an explicit fetch_ctk allow-unpinned input (and --allow-unpinned flag) as the opt-out; it never overrides a mismatch against an existing pin. Manifests from an alternate redist server stay warn-only. Pin 13.5.0 and add a test that every CUDA version in ci/versions.yml and every LOCAL_CTK row of ci/test-matrix.yml is pinned.
No caller sets it, and pinning a new CUDA version is a one-line addition to KNOWN_REDISTRIB_SHA256 that the error message points to. Remove the fetch_ctk input and the --allow-unpinned flag; fetch_ctk/action.yml is back to its main-branch form.
Note in ci/versions.yml that each CUDA version there and in LOCAL_CTK matrix rows needs a pin in KNOWN_REDISTRIB_SHA256, and make the coverage test's failure message say where to add the pin and how to compute it.
|
/ok to test bc92709 |
|
/ok to test 27f1b2f |
|
This reverts an earlier decision: PR 594 deliberately selected newer sanitizers to obtain bug fixes while testing older toolkits. A separately pinned sanitizer version would preserve that original intent without runtime scraping. Did you consider that already? It seems preferable to me. |
Description
Follow-up to #3347. This PR hardens and simplifies how CI fetches the mini CTK.
fetch_ctknow fails closed when a public-server CUDA version has no pinned manifest hash, instead of warning and continuing. The per-archive hash checks from ci: harden fetch_ctk with manifest/archive verification and optional redist-base-url #3347 are only as trustworthy as that manifest, and sincemainmoved to 13.5.0 it has gone unverified. This PR pins 13.5.0 and adds a test that requires a pin for every CUDA version inci/versions.ymland everyLOCAL_CTK: '1'row ofci/test-matrix.yml, so the next bump fails before merge. Manifests from an alternate redist server stay warn-only, since the public pins do not apply to them.compute-sanitizerfrom the CTK under test instead of the latest release, which removesci/tools/guess_latest.sh(a run-time scrape of the redist server's directory listing). Everyfetch_ctkcall now takes its CUDA version fromci/versions.ymlorci/test-matrix.yml, which is what makes failing closed practical. The "latest" sanitizer from CI: Install latest compute-sanitizer separately from CTK #594 no longer buys anything: the only matching matrix rows are the commented-out 12.9.1 rows, and 12.9.1 is the final 12.x release.Checklist