コンテンツにスキップ
Zenn Dev Kou Pg 0131 Articles Gha Update Pinned Actions

【GitHub Actions】コミット SHA で固定したアクションのバージョンを更新する

  • URL: https://zenn.dev/kou_pg_0131/articles/gha-update-pinned-actions
  • 日付: 2026-06-26
  • Tier: Tier 3
  • 要旨: GitHub Actionsでコミット SHA固定を運用した場合のバージョン更新負荷を、pinact・Dependabot・Renovateの3つの手段で自動化する方法をまとめた記事。pinact run –updateコマンドで手動一括更新ができるほか、Dependabot(dependabot.yml設定のみ)やRenovate(空設定でも動作)を使えばPRベースでの定期自動更新が実現できる。いずれもコミットSHAとインラインコメントのバージョンタグを同時に更新する。ただしコミットSHA固定のアクションはDependabotセキュリティアラートの対象外になるため、minimumReleaseAgeやcooldownを設けて即日アップデートを避ける運用が推奨される。

詳細

  • 手動更新: pinact run –update(全ワークフローのアクションを最新版コミットSHAに一括更新。インラインコメントのバージョンタグも同時更新)
  • pinactの対象ファイル: .github/workflows/*.yml, action.yml, action.yaml, サブディレクトリのaction.{yml,yaml}まで(任意ファイルも引数指定可)
  • Dependabot設定(.github/dependabot.yml):
    • package-ecosystem: github-actions, directory: / を指定するだけ
    • デフォルト対象: .github/workflows/*.yml と リポジトリルートのaction.yml のみ
    • サブディレクトリのaction.{yml,yaml}は追加エントリで個別指定が必要
  • Renovate設定: {} 空設定でもgithub-actionsマネージャがデフォルト有効
    • 対象: .github/workflows//*.yml, .github/actions//*.yml, **/action.yaml など広範囲をカバー(Dependabotより広い)
  • 重要な制限事項: コミットSHA固定のアクションはDependabot脆弱性アラートの対象外(セマンティックバージョニング指定のみが対象)
    • RenovateのvulnerabilityAlertsもDependabotアラートに依存するため同様の制限あり
    • 対策: minimumReleaseAge(Renovate)またはcooldown(Dependabot)でリリース直後の即日更新を避ける