Skip to content
Latchkey

GitHub Actions の workflow トリガーとは?

トリガーは workflow を実行させるイベントです。トリガーは workflow の on: ブロックに列挙します。

workflow は何かがトリガーするまで何もしません。トリガーは、リポジトリのアクティビティ、スケジュール、手動アクションを on: キーを通じて自動化に接続します。

それは何か

トリガーは workflow がリッスンするイベントです。GitHub は数十種類をサポートしており、コードの push や pull request から、issue コメント、リリース、スケジュール、手動 dispatch まで含まれます。

Multiple triggers
on:
  push:
    branches: [main]
  pull_request:
  schedule:
    - cron: '0 6 * * *'
  workflow_dispatch:

どう動くか

アクティビティが発生すると、GitHub はすべての workflow の on: ブロックをチェックします。イベントとそのフィルター(branch、path、tag)が一致すれば、GitHub は workflow run を作成します。

トリガーのフィルタリング

多くのトリガーはフィルターを受け付けるため、重要なときだけ実行できます。特定の branch、変更されたファイルの path、tag パターンなどです。これにより、無関係な変更でランナーの分を浪費するのを避けられます。

なぜ重要か

適切なトリガーを選ぶことで自動化がいつ実行されるかを制御でき、それはフィードバックの速度とコストに直接影響します。広すぎるトリガーは分を消費し、狭すぎるトリガーは重要なイベントを見逃します。

関連する概念

一般的なトリガーには pushpull_requestscheduleworkflow_dispatch があり、それぞれ独自のフィルタリングオプションを持ちます。

重要なポイント

  • トリガーは on: の下で宣言されるイベントです。
  • branch、path、tag でフィルタリングできます。
  • トリガーの選択はフィードバックの速度とコストを制御します。

関連ガイド