github-actions-runtime-upgrade-conventions について
github-actions-runtime-upgrade-conventions は、GitHub Actions ワークフローを保守する開発者向けのスキルです。ランタイム非推奨への対応として、互換性のあるメジャーバージョンへの更新、完全な SHA による固定、動作維持の検証を重視します。
主な機能
- 01互換性のある Action メジャーバージョンへの更新
- 02完全なコミット SHA による固定
- 03コミットごとに Action を更新
- 04ワークフローの動作維持
- 05ワークフローと実行ログの検証
活用シーン
- 01ランタイム非推奨警告への対応
- 02ワークフロー YAML 内の Action 更新
- 03ランタイム関連の setup Action の確認
- 04更新プルリクエストの準備と検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ github/ awesome-copilot --skill github-actions-runtime-upgrade-conventionsインストール後、Claude Code で/github-actions-runtime-upgrade-conventionsを入力して読み込まれたか確認します。
詳細
GitHub Actions ランタイムのアップグレードに関する規約
GitHub Actions のワークフローを編集して、アクションのランタイムに関する非推奨警告(Node.js ランタイムの移行など)に対処する際に、このスキルを使用してください。
このスキルを使用する場面
- ワークフローのログで、アクションが非推奨のランタイムで実行されていると報告される場合。
.github/workflows/*.ymlまたは.github/workflows/*.yamlのアクションのバージョンをアップグレードする場合。- 既存のワークフローの動作を維持しながら、アクションの依存関係を最新化する必要がある場合。
アップグレードのルール
- ワークフローと互換性のある、各アクションの最新の安定したメジャーバージョンへのアップグレードを優先してください。
- 不変のピン留めを優先してください。対象のリリースを完全なコミット SHA に解決し、その SHA を
uses:で使用してください。 - 最終的な提案では、変更可能なタグやブランチ(例:
@v4や@main)にピン留めしないでください。 - 問題を特定しやすいよう、1 回のコミットにつき 1 つのアクション(または密接に関連するグループ)をアップグレードしてください。
- ランタイムや依存関係に関するアクションをアップグレードする際は、既存のワークフローの動作を変更しないでください。
このリポジトリで追跡しているアクション
警告が表示された場合は、次のグループのランタイムを優先的に確認してください。
actions/*の下にあるすべてのファーストパーティアクション- 特に
actions/setup-*の下にあるセットアップアクション(例:setup-node、setup-python、setup-dotnet) - ワークフローのログに表示されるランタイムの非推奨警告で明示的に名前が挙げられているその他のアクション
ピン留めのパターン
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.3.1
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.4
アップグレードを提案する際は、まず互換性のある最新リリースを特定し、その後、任意でバージョンコメントを付けて対応するコミット SHA を使用してください。
検証チェックリスト
アクションのバージョンを変更した後は、次の点を確認してください。
- 編集したすべてのワークフローが引き続き解析でき、意図的に変更した場合を除いて、トリガーと権限が維持されていることを確認します。
- 影響を受けるワークフローを実行するか、同等のローカルビルド/テストコマンドを実行し、アップグレードしたステップが正常に完了することを確認します。
- 該当する場合、リリース、署名、アーティファクトの各ステップで引き続き期待される出力が生成されることを確認します。
- ワークフローの実行ログを確認し、新たな非推奨警告やランタイム移行に関する注記がないか確認します。
PR に記載する内容
PR の概要に、次の内容を含めてください。
- アップグレードしたアクション(変更前 -> 変更後)。
- 新しいメジャーバージョンに移行できなかったアクションと、その理由。
- 変更の検証に再実行したワークフロー。
Dependabot との連携
Dependabot で多くの更新を自動化できますが、次の場合にはこのスキルが役立ちます。
- リポジトリで Dependabot によるワークフローの更新が有効になっていない場合。
- 自動更新が利用可能になる前に、ランタイムの警告が表示された場合。
- アクションのバージョンを上げた後、ワークフローの動作を維持できているか検証する必要がある場合。
コメント
Markdown 対応