🐕

SAMデプロイ時に`Requires capabilities : [CAPABILITY_NAMED_IAM]`エラーが発生した場合

2023/08/21に公開

SAMでIAMロール作成失敗時に'Status: FAILED. Reason: Requires capabilities : [CAPABILITY_NAMED_IAM]'というエラーが発生した場合に修正するべき箇所

sam deploy時に--capabilities CAPABILITY_NAMED_IAMを指定することで直ります。

--capabilitiesについては、こちらを参照してください。

エラー全文

Error: Failed to create changeset for the stack: *****, ex: Waiter ChangeSetCreateComplete failed: Waiter encountered a terminal failure state: For expression "Status" we matched expected path: "FAILED" Status: FAILED. Reason: Requires capabilities : [CAPABILITY_NAMED_IAM]

原因

SAM テンプレートファイル内で名前付き IAM ロールを作成している場合に発生します。
template.yamlResources内でAWS::IAM::Roleを使用しているためです。

Discussion