🐯

ローカルで動作しているStateMachineから、別のローカルで動作しているStateMachineを呼び出す

2024/07/12に公開

前提

ローカルのStateMachineは、amazon/aws-stepfunctions-localから作成されたコンテナ上で動いています。

概要

ローカルのStateMachineから、別のローカルで動作しているStateMachineを呼び出した際、下記のようなエラーが出ました。

The security token included in the request is invalid.

認証系のエラー?と思ったのですが、結論としてはAWS CLIを使用するときに設定する--endpointオプションの問題でした。

対応方法

amazon/aws-stepfunctions-localからコンテナを作成する時に、aws-stepfunctions-local-credentials.txtをenvファイルとして読み込ませるのですが、
このファイルで、下記の環境変数を設定する必要があります。

STEP_FUNCTIONS_ENDPOINT={{aws stepfunctions create-state-machine 時に設定するendpoint}}

これでローカルのStateMachineから、別のローカルで動作しているStateMachineを呼び出した際にエラーが発生しなくなります。

STEP_FUNCTIONS_ENDPOINT=に何を設定すれば良い?を記載した記事が見つからなかったので、ここに残しておきます。

参考

https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/sfn-local-config-options.html

Discussion