workflow_callによる再利用可能ワークフロー

workflow_callを使用して他のワークフローから呼び出せる再利用可能ワークフローテンプレートを作成。inputs、secrets、outputs、組織全体での共有を解説。

Advanced

詳細な説明

再利用可能ワークフロー

再利用可能ワークフローは、ワークフローを一度定義して複数の他のワークフローから呼び出すことができ、リポジトリやチーム間の重複を削減します。workflow_callトリガーを使用します。

主要概念

  • Inputs: 呼び出し元から呼び出し先に渡される型付きパラメータ(stringnumberboolean
  • Secrets: 明示的に渡される機密値(secrets: inheritを使用しない限り自動継承されない)
  • Outputs: 再利用可能ワークフローから呼び出し元に返される値
  • クロスリポジトリ: 他のリポジトリのワークフローを参照:uses: org/repo/.github/workflows/template.yml@main

制限事項

  • 最大4レベルのネスト(ワークフローがワークフローを呼び出し...)
  • 再利用可能ワークフローは.github/workflows/ディレクトリに配置する必要がある
  • 呼び出し元は環境変数を渡せない — 代わりにinputsを使用
  • 呼び出されたワークフローは呼び出し元のリポジトリのコンテキストで実行される

ユースケース

組織内の複数リポジトリにわたるデプロイパイプラインの標準化、一貫したテストプラクティスのためのCIテンプレートの共有、または複雑なデプロイロジックのメンテナンス可能なバージョン管理されたテンプレートへの抽象化。

試してみる — GitHub Actions Workflow Builder

フルツールを開く