🎶

Step Functions 入出力早見表、InputPath等をわかりやすく整理

2024/11/03に公開

AWS Step FunctionsのInputPath、Parameters、ResultSelector、ResultPath、OutputPathといった、混乱しそうな入出力について簡潔に整理しました。

早見表

名称 役割 値の形式 組み込み関数
InputPath 抽出 $.foo -
Parameters 作成 {"data.$": "$.foo"} 使える
ResultSelector 作成 {"data.$": "$.foo"} 使える
ResultPath 埋め込み $.foo -
OutputPath 抽出 $.foo -

公式画像

出典:Step Functions での入力と出力の処理

それぞれの説明

InputPath

  • 説明:ステートへの入力($)の一部を抽出します
  • 値の例$.dataset2
  • 既定値$

Parameters

  • 説明:前段からの入力($)を使用してタスクへの入力を作成します
  • 値の例
    {
      "comment": "Selecting what I care about.",
      "MyDetails": {
        "size.$": "$.product.details.size",
        "exists.$": "$.product.availability",
        "StaticValue": "foo"
      }
    }
    
  • 既定値$

ResultSelector

  • 説明:タスクの出力($)を使用して出力を作成します
  • 値の例
    {
      "ClusterId.$": "$.output.ClusterId",
      "ResourceType.$": "$.resourceType"
    }
    
  • 既定値$

ResultPath

  • 説明:前段の出力をステートへの入力のどこに埋め込むかを決めます
  • 値の例
    • $.taskresult(ステートへの入力にtaskresultフィールドを付加し、そこに前段の出力を埋め込みます)
    • null(前段の出力は使用しません。つまり、ステートへの入力をそのまま出力します)
  • 既定値$(前段の出力でステートへの入力全体を上書きします。つまり、前段の出力をそのまま出力します)

OutputPath

  • 説明:前段の出力($)の一部を抽出します
  • 値の例$.Payload
  • 既定値$

Discussion