StepFunction -> ECS

StepFUnction -> ECS
StepFunction:組み込み関数
※参考:JsonPath
Fargate:コマンドの上書き
※参考:DodkerのEntoryPointとCMD
StepFunction:動作確認 TestStateApi

containerOverrideがうまくいかない
- StepFunctionからStates.Array()でECSの起動に成功
- cdkでの実装にあたりJsonPath.Array()を使用
- 対応しているものかと思いきや型の違いによりエラー
- 色々試すも解決せず
- evaluate expressionを用いて対応して解決した
expressionの部分はJsonPathが文字列内に含まれていても勝手に置換してくれた
↓具体的なイメージとしてこういう書き方ができた
expression: '[ "aggregate.sh", "target=$.target" ]',
追記
この件についてはIssueが建てられており、その中で対策が提示されている
I ran into the same issue just now and could create a workaround for myself by using the same method call that JsonPath.listAt makes underneath directly (circumventing its validator). In Golang it ends up looking like this: awscdk.Token_AsList(awsstepfunctions.JsonPath_Array(jsii.String(awsstepfunctions.JsonPath_StringAt("$.foobar")))). I believe in Typescript it should look like this in the end: Token.asList(JsonPath.array(JsonPath.stringAt("$.foobar")))
(訳)私も今同じ問題に遭遇しましたが、そのJsonPath.listAt下にある同じメソッド呼び出しを直接使用することで(そのバリデーターを回避して)、回避策を作成することができました。Golang では、最終的には次のようになります。Typescriptawscdk.Token_AsList(awsstepfunctions.JsonPath_Array(jsii.String(awsstepfunctions.JsonPath_StringAt("$.foobar"))))では、最終的には次のようになると思います。Token.asList(JsonPath.array(JsonPath.stringAt("$.foobar")))
要確認