パイプラインの有効化

CircleCI API または自動キャンセルのワークフローからワークフローをトリガーする必要がある場合に、パイプライン エンジンを有効化する方法を説明します。 パイプラインは、現在オンプレミス版の CircleCI Server ではサポートされていません。

はじめに

ほとんどのプロジェクトでは、デフォルトでパイプラインが有効化されています。 プロジェクトのパイプライン設定は、CircleCI アプリケーションのプロジェクトの [Settings (設定)] ページの [Advanced (詳細)] セクションで確認できます。 メモ: パイプラインは、CircleCI の v2 および v2.1 の構成と互換性があります。

パイプラインのメリット

パイプライン機能を使用すると、ワークフローを含むビルドをトリガーする新しい API エンドポイントを使用して、以下のユース ケースに対応できるようになります。

  • Use the new API endpoint to trigger a pipeline
  • Use pipeline parameters to trigger conditional workflows.
  • Access to version 2.1 config, which provides:
    • Reusable config elements, including executors, commands and jobs.
    • Packaged reusable config, known as orbs.
    • Improved config validation error messages.
    • Option to enable auto-cancel, within Advanced Settings, to abort workflows when new builds are triggered on non-default branches.

Note, it is important to carefully consider the impact of enabling the auto-cancel feature, for example, if you have configured automated deployment jobs on non-default branches.

For more detailed information on pipelines and how you can use their properties in your workflows and jobs, please see the following guides:

トラブルシューティング

パイプライン エラーは、[Workflows (ワークフロー)] ページまたは [Jobs (ジョブ)] ページに表示されます。

従量課金制のプランで、いったんプロジェクトに対してパイプラインを有効化すると、CircleCI サポートにチケットを送信しない限り、オフにすることができません。 以下の制限事項を参照してください。

制限事項

CircleCI では、ほとんどの場合に下位互換性が維持されており、パイプラインを有効化したプロジェクトの大部分で既存のビルドに影響はありません。 以前は機能していたビルドが、パイプラインを有効化したことで機能しなくなる場合は、CircleCI にご連絡ください。

  • アンカーは、アプリケーションの設定ファイルに表示されることなく、処理されて解決されます。
  • シェル コマンドで << を使用する場合 (ヒアドキュメントを使用する場合など)、バージョン 2.1 以上の構成を使用するには、\<< のようにバックスラッシュ `` でエスケープする必要があります。 2.0 の構成に影響はありません。
  • パイプラインは、任意のジョブをトリガーする 1.1 API エンドポイントと完全には下位互換性がありません。パイプラインをオンにした後にこのエンドポイントを使用すると、予期しない結果または不整合な結果となる可能性があります。 代わりに、2018 年 9 月に 1.1 API で導入された、ビルドをトリガーするエンドポイントを使用できます。 このビルドをトリガーする API エンドポイントは、パラメーター、ワークフロー、ジョブ フィルターを受け付けないので、ご注意ください。 パイプラインと併せてこれらの API 機能を多用したいとお考えでしたら、CircleCI のアカウント チームにお問い合わせください。
  • バージョン 2.0 の構成では、下位互換性を確保するために、CIRCLE_COMPARE_URL 環境変数がすべてのジョブに挿入されます。

パイプラインへの移行

このセクションでは、パイプラインへの移行プロセスについて概説します。

2.0 構成でのパイプライン

2.0 構成でパイプラインを使用する場合、CircleCI では CIRCLE_COMPARE_URL 環境変数がすべてのジョブに挿入され、下位互換性が確保されます。 この環境変数は、従来のジョブで使用可能な環境変数とは異なる方法で生成され、いつでも使用できるわけではありません。たとえば、空のリポジトリへのコミットを初めてプッシュした場合や、追加のコミットなしに新しいブランチが作成/プッシュされた場合など、以前のリビジョンが存在しない場合は挿入されません。

ブランチでのパイプラインのオプトイン

プロジェクト全体の設定変更をコミットせずにブランチでパイプラインを試してみるには、主に 2 つの方法があります。

  1. バージョン 2.1 構成を使用する
  2. バージョン 2.0 構成を使用し、experimental スタンザ を追加する

メモ: これらの方法は現在 Web フックとバージョン 2 の「パイプライン トリガー」API に適用されますが、バージョン 1.1 の「ジョブ トリガー」API には適用されません。 パイプラインでのバージョン 1.1 API の使用についてのサポートは、間もなく発表する予定です。

バージョン 2.1 構成の使用

バージョン 2.1 構成を使用すると、パイプラインが自動的に有効になり、パイプライン値など、2.1 専用の機能を利用できるようになります。

experimental スタンザの使用

バージョン 2.0 構成でパイプラインを有効にする構成スタンザは次のとおりです。

experimental:
  pipelines: true

フィードバック方法

  • CircleCI の Twitter アカウント (@CircleCIJapan) 宛てにツイートする
  • アイデア ボードで既存の投稿に投票する、または投稿を追加する

関連項目

詳細については、「ビルドのスキップとキャンセル」を参照してください。