2016-12-20 18 views

答えて

14

スタック作成の最後の画面でチェックボックスをオンにする必要があります。更新:

enter image description here

CodePipeline CloudFormationでデプロイアクションで作成したchange_setを実行できるようにするには、このようにそれを追加することができます:AWS CLI追加で

Configuration: 
     StackName: !Ref GitHubRepository 
     ActionMode: CHANGE_SET_REPLACE 
     Capabilities: CAPABILITY_NAMED_IAM 
     RoleArn: arn:aws:iam::818272543125:role/events-list-codepiplinerole 
     ChangeSetName: !Join ["",[!Ref GitHubRepository, "-changeset"]] 
     TemplatePath: MyAppBuild::sam_post.yaml 

--capabilities CAPABILITY_IAM 

または

--capabilities CAPABILITY_NAMED_IAM 
このようなあなたのコマンドに

は:

aws cloudformation create-stack --stack-name message-store --template-body file://bucket_with_keys.yaml --parameters file://cfg_bucket_with_keys.json --capabilities CAPABILITY_NAMED_IAM 

これは、実際にリソースを作成していないよう--validate-テンプレートをcloudformationには適用されません。

+0

を役に立てば幸い、ありがとうございました。 –

2

AWS CLIを使用している場合は、aws cloudformation create-stackコマンドに追加のパラメータを追加して、これらの機能を提供するように明示的に指定できます。

(これは、他の回答のチェックボックスにチェックを入れたのと同じCLIです)。

パラメータが--capabilities CAPABILITY_IAMで、あなたのコマンドは次のようになりますので:正しい答えだ

aws cloudformation create-stack --stack-name $STACK_NAME --capabilities CAPABILITY_IAM

+0

cli paramを思い出してくれてありがとう。上記のコード例を追加しました。 –

+1

私は間違っているか、 'validate-template'でうまく動作しませんか?私の完全なコマンド: 'aws cloudform validate-template --template-body file://sqs-template.yml --capabilities CAPABILITY_IAM' –

+0

私は同じことが不思議にここに来た。 「エラー」「CapabilitiesReason」が表示されている場合:「次のリソースには機能が必要です:[AWS :: IAM :: Role]」「あなたのテンプレートが有効で、返品を指定する必要がありますスタックを作成するときの機能[ソース](http://docs.aws.amazon.com/cli/latest/reference/cloudformation/validate-template.html) –

関連する問題