ビルドトリガーの設定
このページでは、WorkflowまたはPipeline内で定義される、ターゲットベースのビルドトリガーについて説明します。より詳細で柔軟なビルドトリガーシステムを利用できるため、すべての新規ユーザーにこの方法をお勧めします。
既存の設定では、レガシーなプロジェクトベースのトリガーを使用している場合があります。詳細については、レガシーなプロジェクトベースのトリガーをご覧ください。
ビルドトリガーの作成Click to copy link
ビルドトリガーは、WorkflowまたはPipeline内で直接作成します。このようなトリガーを使用すると、1つのコードイベントで複数のWorkflowsまたはPipelinesをトリガーできます。トリガーはUI、または設定YAMLファイルで作成できます。
トリガーを作成するには、次の手順に従います。
- Workflow Editor
- Configuration YAML
-
Bitrise にアクセスして Log in、左側の Bitrise CI を選択し、プロジェクトを選択します。
-
メインページの Workflows ボタンをクリックします。
-
Select a Workflow。
-
WorkflowのページでTriggersタブを選択します。

-
trigger typeを選択し、Add triggerボタンをクリックします。
-
ダイアログでトリガーを設定します。
トリガー条件の値を定義する際に正規表現を使用するには、正規表現パターンボタンをクリックして有効にします。

-
完了したら、Add triggerをクリックします。
-
設定YAMLファイルを開きます。
-
Workflowを見つけます。
-
Workflow内に
triggersプロパティを追加します。my-workflow:triggers: -
トリガーを作成します。各トリガータイプの正確な構文については、YAMLのビルドトリガー構文をご覧ください。
たとえば、次のトリガーは
my-workflowという名前のWorkflowでビルドを開始します。my-workflow:triggers:push:- commit_message: your_messageパターンマッチングには2つのプロパティを使用できます。
patternを使用すると、シンプルなワイルドカードマッチングを利用できます。regexを使用すると、正規表現による複雑なパターンマッチングを利用できます。
my_awesome_workflowtriggers:push:- branch: main- commit_message:pattern: "hello"last_commit: truepull_request:- source_branch: "*" -
設定を保存します。
Triggersページでターゲットベースのトリガーを新規追加するClick to copy link
Triggersページを離れることなく、新しいターゲットベースのトリガーをすばやく追加できます。たとえば、アクティブなトリガーを確認した後、コンテキストを切り替えずにすぐ別のトリガーを追加でき、設定作業を効率化できます。
-
プロジェクトのTriggersページに移動します。
-
まだトリガーがない場合、Triggersページの中央に新しいAdd Triggerボタンが表示されます。Add triggerをクリックし、ダイアログに入力します。

-
すでにターゲットベースのトリガーがある場合、add triggerボタンはトリガーの上、右上に表示されます。add triggerをクリックし、ダイアログに入力します。

ここでトリガーを追加すると特定のワークフローが作成され、そのワークフローのTriggersタブがWorkflowsページに表示されるため、簡単に管理できます。
トリガーの無効化Click to copy link
任意のビルドトリガーを一時的に無効にできます。無効化されたトリガーは ビルドをトリガーしませんが、設定情報はすべて保持されます。無効化したトリガーはいつでも再度有効にできます。
ビルドトリガーを無効にするには、次の手順に従います。
- Workflow Editor
- Configuration YAML
-
BitriseでWorkflow Editorを開きます。
-
Select a WorkflowまたはPipeline。
-
WorkflowページでTriggersタブを選択します。

-
必要なトリガーを見つけ、その名前の横にあるオプションメニュー(⋮)をクリックします。

-
トリガーを無効化を選択します。
-
設定YAMLファイルを開きます。
-
WorkflowまたはPipelineとその
triggersプロパティを見つけます。 -
無効にしたいトリガーに
enabled: falseを追加します。triggers:push:- branch: mainenabled: false
最新のGitコミットに対するトリガーの作成Click to copy link
デフォルトでは、コードプッシュトリガーでCommit messageまたはFile change条件を使用する場合、Bitriseは1回のコードプッシュに含まれるすべてのコミットメッセージとすべての変更ファイルを評価します。
ただし、プッシュ内の最新のコミットのみを評価するようにトリガーを設定することもできます。プッシュに複数のコミットが含まれる場合、評価されるのは最新の1件のみです。
- Workflow Editor
- Configuration YAML
-
新しいプッシュトリガーの作成を参照してください。
-
Commit messageまたはFile change条件のいずれかを選択します。

-
条件の下でLast commit onlyを有効にします。
-
設定YAMLファイルを開き、Workflowに移動します。
-
新しいプッシュトリガーを追加します。この例では
commit_message条件を使用しています。my-workflow:triggers:push:- commit_message: your_message -
last_commitプロパティを追加し、trueに設定します。my-workflow:triggers:push:- commit_message: your_messagelast_commit: true
ドラフトPRからのビルドトリガー実行Click to copy link
GitHubとGitLabには、ドラフトプルリクエスト(GitLabの場合はマージリクエスト)という機能があります。プルリクエスト(PR)を作成する際、レビュー可能な状態のプルリクエストとして作成 するか、ドラフトプルリクエストとして作成するかを選択できます。ドラフトプルリクエストはマージできず、コードオーナーに自動的にレビューが依頼されることもありません。
この機能はGitHubおよびGitLabのリポジトリでのみサポートされています。
デフォルトでは、ドラフトPRを開くとビルドがトリガーされます。この動作はいつでも無効にできます。
ドラフトPRを開いた際にビルドがトリガーされた場合、それをレビュー用に提出しても(つまり「正式な」PRに変換しても)、再度トリガーされることはありません。ドラフトPRのトリガー設定によって、どのコードイベントでビルドがトリガーされるかを確認できます。ドラフトPRのビルドトリガーの動作。
それぞれのトリガーには個別のトグルがあり、特定のトリガーはドラフトPRからビルドを開始し、他のトリガーは開始しないようにアプリを設定できます。
ドラフトPRからのビルドの無効化Click to copy link
このガイドでは、ドラフトPRからのビルドトリガーを完全に無効にする方法を説明します。ただし、ドラフトプルリクエストによってトリガーされたビルド内で特定のStepsをスキップすることも可能です。その場合は、run_if条件とGITHUB_PR_IS_DRAFT環境変数を使用するだけです。詳細については、Stepの条件付き有効化・無効化をご覧ください。
- Workflow Editor
- Configuration YAML
-
Bitrise にアクセスして Log in、左側の Bitrise CI を選択し、プロジェクトを選択します。
-
メインページの Workflows ボタンをクリックします。
-
Workflowを開き、Triggersタブを選択します。
Pipelineがある場合、この設定は設定YAMLファイルでのみ無効にできます。
-
必要なトリガーを見つけ、その名前の横にあるオプションメニュー(⋮)をクリックします。
-
メニューからEdit triggerを選択します。

-
Include draft pull requestsオプションのチェックを外し、Apply changesをクリックします。
-
設定YAMLファイルを開きます。
-
変更したいすべてのWorkflowsまたはPipelines内の
triggers要素を見つけます。 -
必要なトリガーエントリに
draft_enabled: falseを追加します。triggers:pull_request:- target_branch: "develop"draft_enabled: false- target_branch: "main"draft_enabled: false- comment: 'run Bitrise'これにより、developブランチとmainブランチに対する非ドラフトのPR、または任意のPRに
run Bitriseがコメントされた場合にワークフローが開始されます。
ドラフトPRのビルドトリガーの動作Click to copy link
この表は、ドラフトPRのトリガー設定に応じて、ドラフトPRに関する特定のアクションが実行されたときにビルドがトリガーされるかどうかを示しています。たとえば、ドラフトPRをPRに変換する場合、ドラフトPRトリガーが有効になっているとビルドはトリガーされませんが、無効になっているとトリガーされます。
| アクション | ドラフトPRトリガーが有効な場合 | ドラフトPRトリガーが無効な場合 |
|---|---|---|
| ドラフトPRを開く | ||
| ドラフトPRにコミットをプッシュする | ||
| ドラフトPRをPRに変換する | ||
| PRをドラフトPRに変換する |
サポートされているトリガー条件Click to copy link
すべてのトリガー条件がすべてのGitプロバイダーで利用できるわけではありません。詳細については、プッシュトリガーとプルリクエストトリガーの両方の表を確認してください。
プッシュトリガー条件Click to copy link
| Gitプロバイダー | ブランチ | コミットメッセージ | 変更されたファイル |
|---|---|---|---|
| GitHub(クラウドおよびセルフホスト) | |||
| GitLab(クラウドおよびセルフホスト) | |||
| Bitbucket(クラウドおよびセルフホスト) | |||
| Assembla | |||
| Deveo (Perforce) | |||
| Gogs | |||
| Azure DevOps |
プルリクエストトリガー条件Click to copy link
| Gitプロバイダー | Source branch | ターゲットブランチ | ラベル | コメント | コミットメッセージ | 変更されたファイル |
|---|---|---|---|---|---|---|
| GitHub(クラウドおよびセルフホスト) | ||||||
| GitLab(クラウドおよびセルフホスト) | ||||||
| Bitbucket(クラウドおよびセルフホスト) | N/A | |||||
| Assembla | N/A | |||||
| Deveo (Perforce) | ||||||
| Gogs | ||||||
| Azure DevOps |
Assembla、Deveo(Perforce)、Gogsはプッシュベースのトリガーのみをサポートしています。これらのプロバイダーではプルリクエストトリガーは利用できません。
GitHubスタック内のプルリクエストの場合、Bitriseはターゲットブランチ条件を、プルリクエストが直接ターゲットとするブランチではなく、スタックのベースブランチと照合し ます。
feature/part-2がfeature/part-1をターゲットとし、スタック全体がmainにマージされるスタックを例に考えます。target_branch: main条件はスタック内のすべてのプルリクエストに一致します。feature/part-1に設定された条件はいずれにも一致しません。