ci: automate SHA-pinned GitHub Actions updates via Dependabot#4552
Conversation
|
✅ Tests 🎉 All green!❄️ No new flaky tests detected 🎯 Code Coverage (details) 🔗 Commit SHA: ca48055 | Docs | Datadog PR Page | Was this helpful? React with 👍/👎 or give us feedback! |
BenchmarksBenchmark execution time: 2026-03-17 14:28:04 Comparing candidate commit ca48055 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 155 metrics, 9 unstable metrics.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files🚀 New features to boost your workflow:
|
What does this PR do?
Completes the supply-chain hardening started in #4542 by automating ongoing
maintenance of SHA-pinned GitHub Actions:
@vtag refs intest-apps.cueto full commit SHAs.test-apps.cuewheneverDependabot bumps SHAs in
test-apps.yml.Motivation
After #4542, Dependabot can update YAML workflow files but not the CUE source
template (
test-apps.cue). Without automation, every Dependabot PR createsdrift:
test-apps.ymlgets updated SHAs whiletest-apps.cuestays stale.A developer running
make test-apps.ymlwould silently revert all pinned SHAsback to
@vtags, undoing the security fix.A naive CI drift check (
cue export && git diff --exit-code) doesn't workbecause
cue exportcannot produce YAML comments — Dependabot adds versioncomments (
# vX.Y.Z) that the CUE exporter can't reproduce, so the diffwould always be non-empty regardless of SHA correctness.
The auto-sync workflow triggers on Dependabot branch pushes, extracts updated
SHAs from
test-apps.ymlviagrep/sed, patchestest-apps.cue, andcommits back to the branch. Uses
pushtrigger (notpull_request_target)for simplicity and full write access without untrusted-code risks. The
GITHUB_TOKENpush safety prevents infinite workflow loops.Reviewer's Checklist
make lintlocally.make testlocally.make generatelocally.make fix-moduleslocally.Unsure? Have a question? Request a review!