パイプラインの種類
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
プロジェクトでは、次のようなさまざまな種類のパイプラインを実行できます:
- ブランチパイプライン
- タグパイプライン
- マージリクエストパイプライン
- マージ結果パイプライン
- マージトレイン
これらの種類のパイプラインはすべて、マージリクエストのパイプラインタブに表示されます。
ブランチパイプライン
ブランチに変更をコミットするたびに、パイプラインを実行できます。
この種類のパイプラインは、ブランチパイプラインと呼ばれます。パイプラインリストにbranchラベルが表示されます。
このパイプラインはデフォルトで実行されます。設定は必要ありません。
ブランチパイプライン:
- ブランチに新しいコミットをプッシュすると実行されます。
- 定義済み変数の一部にアクセスできます。
- ブランチが保護ブランチの場合、保護された変数と保護されたRunnerにアクセスできます。
タグパイプライン
新しいタグを作成またはプッシュするたびに、パイプラインを実行できます。
この種類のパイプラインは、タグパイプラインと呼ばれます。パイプラインリストにtagラベルが表示されます。
このパイプラインはデフォルトで実行されます。設定は必要ありません。
タグパイプライン:
- リポジトリに新しいタグを作成/プッシュすると実行されます。
- 定義済み変数の一部にアクセスできます。
- タグが保護タグの場合、保護された変数と保護されたRunnerにアクセスできます。
マージリクエストパイプライン
ブランチパイプラインの代わりに、マージリクエストでソースブランチに変更を加えるたびにパイプラインが実行されるように設定できます。
この種類のパイプラインは、マージリクエストパイプラインと呼ばれます。パイプラインリストにmerge requestラベルが表示されます。
マージリクエストパイプラインは、デフォルトでは実行されません。.gitlab-ci.ymlファイルで、マージリクエストパイプラインとして実行するようにジョブを設定する必要があります。
詳細については、マージリクエストパイプラインを参照してください。
マージ結果パイプライン
マージ結果パイプラインは、ソースブランチとターゲットブランチをマージした結果に対して実行されます。これは、マージリクエストパイプラインの一種です。
これらのパイプラインはデフォルトでは実行されません。.gitlab-ci.ymlファイルで、ジョブをマージリクエストパイプラインとして実行するように設定し、マージ結果パイプラインを有効にする必要があります。
これらのパイプラインは、パイプラインリストにmerged resultsラベルが表示されます。
詳細については、マージ結果パイプラインを参照してください。
マージトレイン
デフォルトブランチへのマージが頻繁に行われるプロジェクトでは、異なるマージリクエストの変更が互いに競合する可能性があります。マージトレインを使用して、マージリクエストをキューに入れることで、各マージリクエストが、それ以前にキューに入れられた他のマージリクエストと比較され、すべてが整合して動作することを確認できます。
マージトレインはマージ結果パイプラインとは異なります。マージ結果パイプラインは、変更がデフォルトブランチのコンテンツで動作することを保証しますが、他のユーザーが同時にマージしているコンテンツでは保証されません。
これらのパイプラインはデフォルトでは実行されません。.gitlab-ci.ymlファイルで、ジョブをマージリクエストパイプラインとして実行するように設定し、マージ結果パイプラインを有効にして、マージトレインを有効にする必要があります。
これらのパイプラインは、パイプラインリストにmerge trainラベルが表示されます。
詳細については、マージトレインを参照してください。