chore: pin GitHub Actions uses: references to commit SHA instead of tag#731
Conversation
Scaffolding commit ahead of pinning the geoipupdate.yml uses: references to immutable commit SHAs. Prompt: Work on issue #728 in credfeto/scripts.
…ipupdate.yml Pins actions/checkout, credfeto/action-dotnet-version-detect, actions/setup-dotnet, and stefanzweifel/git-auto-commit-action to their immutable commit SHAs (with the released tag as a trailing comment) so a compromised or repointed upstream tag cannot silently change what runs.
|
Simplify clean - advancing to code review |
Code Review: Pin GitHub Actions in geoipupdate.ymlSummaryLow blast-radius change: pins 4 Critical (must fix before merge)None. Warnings (should fix, creates tech debt)None. Suggestions (nice to have)None. Architecture CompliancePASS - no workflow logic changed, only version pinning. Test CoverageN/A - CI/CD metadata change, no testable logic. Existing CI (build-pre-release, pull-request) passes. What's Good
No findings. Advancing to security review. |
|
Code review clean - advancing to security review |
|
Security review clean, advancing to coverage check |
AI Coverage phase: blocked - no baseline capturedThe AI Coverage phase decision procedure requires a This baseline should have been captured and posted during the Pre-Work Baseline Check on To unblock: a human (or an earlier-phase rerun) needs to capture main's per-language coverage baseline and post it as a |
|
no need for coverage of github acction changes |
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
Summary
Part of an org-wide audit of
.github/workflows/*.ymland.github/actions/*/action.ymlfiles for GitHub Actions referenced by a mutable tag instead of a full commit SHA. A tag can be repointed by the upstream maintainer, or an attacker who compromises their account, without warning; a commit SHA is immutable.This PR will pin the four
uses:references in.github/workflows/geoipupdate.ymlto their immutable commit SHAs, keeping the released version as a trailing comment:actions/checkout@v7.0.1->actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1actions/setup-dotnet@v6->actions/setup-dotnet@a98b56852c35b8e3190ac28c8c2271da59106c68 # v6credfeto/action-dotnet-version-detect@v1.3.0->credfeto/action-dotnet-version-detect@d572bbd7285038bda731c8a4f237b9b8e64a9954 # v1.3.0stefanzweifel/git-auto-commit-action@v7->stefanzweifel/git-auto-commit-action@4a55954c782fc1ea30b9056cd3e7a2b40ca8887d # v7All four SHAs have been independently verified against the upstream repositories' tags (
git ls-remote --tags) and match exactly.Test strategy
actionlint/ repo YAML lint against the edited workflow.Closes #728