Skip to main content

構成YAMLでのビルドトリガー

概要

構成 YAML ファイルには、ビルド トリガーの定義が含まれています。オンライン ワークフロー エディターを使用せずに、YAML で直接構成できます。

既存のトリガー構成

このページでは、ワークフローまたはパイプライン内で定義されるターゲットベースのビルド トリガーについて詳しく説明します。よりきめ細かく柔軟なビルド トリガー システムを提供するため、すべての新規ユーザーにはこのアプローチをお勧めします。

既存の構成では、従来のプロジェクトベースのトリガーが使用される場合があります。詳細については、以下を参照してください。 従来のプロジェクトベースのトリガー

構成 YAML ファイルには、ビルド トリガーの定義が含まれています。オンライン ワークフロー エディターを使用せずに、YAML で直接構成できます。

トリガー構文

トリガーは、 triggers ワークフローまたはパイプライン内の要素。 triggers 要素には、トリガーのタイプと少なくとも 1 つのトリガー条件が含まれます。

例えば、以下のトリガーはコードがプッシュされたときにビルドを起動します。 release 支店。

workflows:
  pipeline-tests:
    triggers:
      push:
      - branch: "release"

複数の一致するトリガー

構成 YAML 内のすべてのトリガーを解析し、一致するすべてのトリガーでビルドを開始します。つまり、トリガーの順序は重要ではありません。

たとえば、2つのワークフローがあり、 push 同じトリガー branch 条件では、コミットがそのブランチにプッシュされたときに両方のトリガーがトリガーされます。以下の構成では、コミットがそのブランチにプッシュされたときに両方のトリガーがビルドを開始します。 release 支店:

  • pipeline-tests ワークフローは、 release 支店。

  • pipeline-build ワークフローの使用 ワイルドカード そのため、どのコミットでもビルドがトリガーされます。

workflows:
  pipeline-tests:
    triggers:
      push:
      - branch: "release"
    [...]
  pipeline-build:
    triggers:
      push: 
      - branch: "*"

複数のトリガー条件

複数のトリガー条件を定義した場合、ビルドをトリガーするにはそれらすべてが一致する必要があります。以下の例では、次の場合にビルドがトリガーされます。

  • コミットは release 支店。

  • コミットで特定のファイルが変更されました。

workflows:
  pipeline-builds:
    triggers:
      push:
      - branch: release
        changed_files:
          - path/to/library-a/**

ワイルドカードと正規表現

ワイルドカード(*)は、すべてのタイプのトリガー内で単純なテキストマッチングを行うために使用できます。ワイルドカードは、正規表現の高度なパターンマッチング機能を必要としない場合に適しています。たとえば、 fix ワイルドカードを使用して実現できます。

ワイルドカードは、入力に含まれる特定の固定値を一致させるのに役立ちます。複数の代替値、否定、特定の文字グループまたは特定の文字タイプ (たとえば、数字のみ) のキャプチャが必要な場合は、正規表現を使用することをお勧めします。

トリガー条件に正規表現を使用するには、 regex: その値に:

workflows: 
  deploy:
    triggers:
      tag:
      - name:
          regex: '^\d\.\d\.\d$'
      pull_request:
      - comment: "[workflow: deploy]"
        commit_message:
          regex: '.*\[workflow: deploy\].*'

トリガーコンポーネント

表1 すべてのトリガータイプのコンポーネント

成分

説明

許容値

デフォルト値

pull request

push

tag

トリガーのタイプを定義します。ターゲットベースのトリガーのトリガー条件は、これらの要素の子です。

該当なし

該当なし

enabled

トリガーが現在アクティブかどうかを定義するブール型プロパティ。

  • true

  • false

true


表2 コードプッシュトリガーのコンポーネント

成分

説明

デフォルト値

branch

ビルドをトリガーするためにコードがプッシュされるリポジトリのブランチ。

*

commit_message

ビルドをトリガーするコミット メッセージ。

*

changed_files

変更によってビルドをトリガーするファイルまたはフォルダーへのパス。

*


表3 プルリクエストトリガーのコンポーネント

成分

説明

デフォルト値

source_branch

プル リクエストが開かれるブランチ。

*

target_branch

プルリクエストのマージ対象となるブランチ。

*

label

プルリクエストのラベル。

*

draft_enabled

ドラフト プル リクエストがビルドをトリガーするかどうかを定義するブール プロパティ。

true

comment

プルリクエストに投稿されたコメント。

*

commit_message

プル リクエストへのプッシュ内の特定のコミット メッセージ。

*

changed_files

プル リクエストで変更される特定のファイル。

*


表4 タグトリガーのコンポーネント

成分

説明

デフォルト値

name

タグの値。文字列値または regex 財産。

*