このトピックでは、並列ステップについて説明し、例を示します。
はじめに
並列ステップは、複数のブランチを並列実行します。各ブランチには、一連の順次ステップが含まれます。
並列ステップの各ブランチには、ローカル変数があります。並列ステップが実行されると、すべてのブランチが同時に実行されます。各ブランチ内の順次ステップは、そのブランチのローカル変数を変更します。すべてのブランチの実行が完了すると、出力マッピングが、ブランチのローカル変数の配列を並列ステップの出力に変換します。
説明 並列ステップには、最大 100 個のブランチを設定できます。
並列ステップには、次のプロパティがあります。
- (必須)type:ステップのタイプです。値は
parallelにする必要があります。 - (必須)name:ステップの名前です。
- (必須)branches:ブランチの配列です。
(必須)steps:ブランチの順次ステップを定義します。
- (オプション)end:これがフロー内の最後のステップであるかどうかを指定します。
- (オプション)inputMappings:入力マッピングです。
- (オプション)outputMappings:出力マッピングです。このステップの
$local変数は配列です。配列内の各要素は、ブランチの実行結果を含む JSON オブジェクトです。説明 出力マッピングが指定されていない場合、このステップの出力はデフォルトで空になります。
例
次の例では、並列ステップを定義するフローを示します。この並列ステップには 2 つのブランチがあり、各ブランチには pass ステップが含まれています。
version: v1
type: flow
steps:
- type: parallel
name: myparallel
branches:
- steps:
- type: pass
name: pass1
outputMappings:
- target: result
source: pass1
- steps:
- type: pass
name: pass2
outputMappings:
- target: result
source: pass2
outputMappings:
- target: result
source: $local[*].result pass1の出力は次のとおりです。{ "result": "pass1" }pass2の出力は次のとおりです。{ "result": "pass2" }myparallelの出力は次のとおりです。{ "result": ["pass1", "pass2"] }