Skip to content

ci: AUT-784 pin GitHub Actions to commit SHAs - #560

Closed
svcnemo-autobot wants to merge 1 commit into
NVIDIA-NeMo:mainfrom
svcnemo-autobot:pin-actions-to-sha
Closed

ci: AUT-784 pin GitHub Actions to commit SHAs#560
svcnemo-autobot wants to merge 1 commit into
NVIDIA-NeMo:mainfrom
svcnemo-autobot:pin-actions-to-sha

Conversation

@svcnemo-autobot

Copy link
Copy Markdown
Contributor

Background

Workflow steps referenced third-party actions and reusable workflows by mutable tags (e.g. @v6), which are vulnerable to tag-mutation supply-chain attacks. GitHub's hardening guidance recommends pinning to immutable commit SHAs.

What changed

Pinned every external uses: in .github/workflows/* to the commit SHA it currently resolves to, keeping the original version as a trailing # vX comment for readability and future bumps.

Details

  • Covers actions/*, astral-sh/setup-uv, codecov/codecov-action, peter-evans/create-pull-request, mikepenz/release-changelog-builder-action, github/codeql-action, crate-ci/typos, and the NVIDIA-NeMo/FW-CI-templates reusable workflows across 16 workflow files.
  • Local ./.github reusable-workflow references are left unchanged (they are paths, not tags).

Tested

  • Grep confirms no external uses: remains on a mutable tag (all now @<40-hex>).
  • Spot-checked SHA↔tag resolution via the GitHub API: actions/checkout@v6df4cb1c…, FW-CI-templates@v0.63.08ebb3ae….

Replace all mutable action/reusable-workflow tag references in the
workflows with the immutable commit SHA they currently resolve to,
keeping the original version as a trailing comment for readability and
future bumps. This hardens the CI supply chain against tag-mutation
attacks (per GitHub's hardening guidance).

Covers third-party actions (actions/*, astral-sh/setup-uv,
codecov/codecov-action, peter-evans/create-pull-request,
mikepenz/release-changelog-builder-action, github/codeql-action,
crate-ci/typos) and the NVIDIA-NeMo/FW-CI-templates reusable workflows.
Local ./.github reusable-workflow references are unchanged (not tags).

Signed-off-by: svcnemo-autobot <svcnemo-autobot@nvidia.com>

Copy link
Copy Markdown
Contributor Author

PR #560 — needs attention
Blocking finding: The hardening remains incomplete at .github/workflows/release-docs.yml:89-95: it checks out NVIDIA-NeMo/FW-CI-templates with mutable ref: v0.74.0 and executes a local action from that checkout. Pin the ref to the verified tag SHA 859ae21dd5588c87e3bde499ddab7a3025773e8d.
Other status: The branch conflicts with current main, and the equivalent action-pinning work has already landed there in #573 with newer pins. The failed release permission check and propagated release-summary are stale-branch workflow failures; all listed non-release checks passed.
Validation gaps: Rebase or close as superseded rather than merging the stale workflow set unchanged.

@ko3n1g ko3n1g closed this Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants