CloudFormation(SAM)のスタック作成に失敗した場合に確認するべきこと
CloudFormation(SAM)のスタック作成に失敗した場合に確認するべきこと
- SAMのテンプレートにエラーがないか確認する
- LambdaなどでECRを使用している場合に、エラー発生時のコンテナイメージが残っていないかどうかを確認する
エラー内容
自分の場合は、特にError: Failed to create/update the stack: *****, Waiter StackCreateComplete failed: Waiter encountered a terminal failure state: For expression "Stacks[].StackStatus" we matched expected path: "ROLLBACK_COMPLETE" at least once
というエラーが発生しました。
1. SAMのテンプレートにエラーがないか確認する
一番多いと思うのが、この原因です。
SAMテンプレートのエラーは、sam validate
で確認できますが、これは完璧ではありません。
これで検証が通っても、実際にスタックを作成するとエラーが発生することがあります。
さらに、これでエラーが発生した場合は具体的にどこが間違っているのかがわかりません。
単にError: Failed to create/update the stack: *****, Waiter StackCreateComplete failed: Waiter encountered a terminal failure state: For expression "Stacks[].StackStatus" we matched expected path: "ROLLBACK_COMPLETE" at least once
というエラーが出てしまいます。
2. LambdaなどでECRを使用している場合に、エラー発生時のコンテナイメージが残っていないかどうかを確認する
LambdaなどでECRを使用している場合に、エラー発生時のコンテナイメージが残っていないかどうかを確認する必要があります。
メニューでECR
と検索し、リポジトリ(Elastic Container Registry)
を選択し、該当の古いイメージを削除してください。
Discussion