mcpField
G
github-actions

github-actions

github.com/openhandsクラウド・DevOps17671 回インストール今日更新
リポジトリ

github-actions について

GitHub Actions のワークフローやカスタム Action の作成とトラブルシューティングを扱うガイドです。ログや実際の値の確認、ローカルテスト、不要な CI 実行の抑制を重視します。

主な機能

  1. 01カスタム Action のデプロイ手順
  2. 02ワークフローのデバッグ手順
  3. 03act によるローカルテスト
  4. 04小規模な再現手順の計画
  5. 05セキュリティと権限の注意点

活用シーン

  1. 01失敗したワークフロー実行の調査
  2. 02CI 前のワークフローのローカルテスト
  3. 03権限設定と fork PR の対応

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/openhands/extensions --skill github-actions

インストール後、Claude Code で/github-actionsを入力して読み込まれたか確認します。

同梱ファイル.plugin/plugin.jsonREADME.md

詳細

GitHub Actions ガイド

重要なルール

カスタムアクションのデプロイ:

  • 新しいカスタムアクションは、使用する前に必ず main ブランチにマージしてください
  • 初回のマージ後は、フィーチャーブランチからテストしてください

デバッグ手順: 次の場合は、シークレットではないパラメーターを出力するデバッグ手順を追加してください。

  • 新しいアクションを作成するとき、または
  • 特に複雑な問題のトラブルシューティングを行うとき

(すべてのワークフローで必要なわけではありません。必要に応じて使用してください)

効果を高める原則

アクションは CI の実行時間を消費します。反復的に試すのではなく、計画的に進めてください。

  1. ポーリングではなく監視する - gh run watch / gh pr checks --watch を使って実行状況をリアルタイムで追跡します
  2. 推測ではなくログを読む - コードを変更する前に、失敗したジョブのログを取得します
  3. 実際の値を出力する - デバッグ手順で、想定ではなく実際の inputs / github コンテキストを確認します
  4. まずローカルでテストする - act を使うと、ワークフローをローカルマシンで実行でき、CI の実行時間を節約できます
  5. 最小限の再現を計画する - 規模を拡大する前に、ジョブを 1 つにし、マトリックスを最小限に抑え、トリガーを絞り込みます

デバッグワークフロー全体、gh コマンド、YAML のデバッグ手順の例については、README.md を参照してください。

主な注意点

  1. フォークからの PR ではシークレットを利用できません - pull_request ではフォークからの PR にシークレットが渡されません。pull_request_target では利用できますが、その中でフォークからの PR のコードをチェックアウトしたり実行したりしてはいけません(書き込み権限を使った RCE の危険があります)。
  2. アクションのバージョンを固定する - @main ではなく、@v4 または SHA を使用します(破壊的変更を防ぐため)。
  3. 権限を明示する - GITHUB_TOKEN の操作には permissions: ブロックを設定します。
  4. ジョブ間のデータにはアーティファクトを使用する - upload-artifact / download-artifact を使わない限り、ファイルはジョブ間で保持されません。

コメント