パイプラインのタスクの出力で、指定した条件に基づいてパイプラインの実行または停止を決定できます。タスクの出力に基づいてパイプラインの動作を決めるには、[条件] タスク タイプを使用します。

パイプラインで、[条件] タスク タイプを決定ポイントとして使用します。指定した条件式で [条件] タスクを実行すると、パイプライン、ステージ、およびタスクのプロパティを評価できます。

[条件] タスクの結果によって、パイプラインで次のタスクを実行するかどうかが決まります。

  • 条件が True の場合、パイプラインの続行が許可されます。
  • 条件が False の場合、パイプラインが停止します。

[条件] タスクとともに複数のタスクをバインドした 1 つのタスクの出力値を、次のタスクの入力として使用する方法については、VMware Code Stream パイプラインで変数のバインドを使用する方法を参照してください。

表 1. [条件] タスクおよびその条件式とパイプラインとの関連
[条件] タスク タイプ... 影響を受ける対象... 機能...

条件タスク

パイプライン

[条件] タスク タイプでは、タスクの出力が True か False かに応じて、パイプラインをその時点で実行または停止するかどうかが決まります。

条件式

[条件] タスクの出力

パイプラインを実行すると、[条件] タスクに含まれる条件式で、True または False の出力ステータスが返されます。たとえば、条件式で、[条件] タスクの出力ステータスを完了、ビルド番号を 74 にする必要があるとします。

条件式は、次のように [条件] タスク タイプの [タスク] タブに表示されます。

[条件] タスクの条件式。

[条件] タスク タイプは、他のタスク タイプの [条件に基づく] 設定の機能と動作とは異なります。

他のタスク タイプの条件設定。

他のタスク タイプの [条件に基づく] 設定は次のとおりです。

  • True または False の前提条件式の評価に基づいて、連続したタスクではなく現在のタスクを実行するかどうかが判断されます。[条件に基づく] 設定の条件式は、パイプラインの実行時に現在のタスクの出力ステータスとして True または False を返します。
  • 独自の条件式とともに、[タスク] タブに表示されます。

この例では、[条件] タスクを使用します。

前提条件

  • パイプラインが配置されており、ステージとタスクが含まれていることを確認します。

手順

  1. パイプラインで、[条件] タスクを表示する必要がある決定ポイントを決めます。
  2. 成功または失敗のステータスに応じて実行するタスクの前に、[条件] タスクを追加します。
  3. [条件] タスクに条件式を追加します。
    例: "${Stage1.task1.output.status}" == "COMPLETED" || ${input.buildNumber} == 74
    [条件] タスク タイプへの条件の追加。
  4. タスクを検証します。
  5. パイプラインを保存し、有効にして実行します。

結果

パイプラインの実行を監視し、[条件] タスクでパイプラインの続行または停止を確認します。

次のタスク

[条件] タスク タイプを使用して、パイプラインのデプロイをロールバックすることもできます。たとえば、ロールバック パイプラインでは、[条件] タスクによって、VMware Code Stream が条件式に基づいてパイプラインの障害をマーク付けし、さまざまな障害タイプに対して 1 つのロールバック フローをトリガできます。

デプロイをロールバックする場合は、VMware Code Stream で展開をロールバックする方法を参照してください。