2016-12-20 4 views

Antwort

14

Es stellt sich heraus, dass Sie ein Kästchen auf dem letzten Bildschirm der Stapelerstellung | Update:

enter image description here

In CodePipeline Cloudformation Sie es wie folgt hinzufügen, kann die Ausführung des erzeugten change_set im deploy Aktion zu ermöglichen:

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 

In der aws cli anhängen

--capabilities CAPABILITY_IAM 

oder

--capabilities CAPABILITY_NAMED_IAM 

Um Ihren Befehl wie folgt aus:

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 

Dies gilt nicht --validate-Vorlage Cloudformation, da es nicht wirklich ist, um die Ressourcen zu schaffen.

+0

hilft, dass eine richtige Antwort ist, danke. –

2

Wenn Sie die AWS-Befehlszeilenschnittstelle verwenden, können Sie dem Befehl aws cloudformation create-stack einen zusätzlichen Parameter hinzufügen, der explizit angibt, dass diese Funktionen bereitgestellt werden sollen.

(dies ist das CLI-Äquivalent zum Ankreuzen des Kontrollkästchens in der anderen Antwort hier).

Der Parameter ist --capabilities CAPABILITY_IAM, so dass Ihr Befehl aussehen würde:

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

Hoffnung, die

+0

Danke für die Erinnerung an den Cli Param. Dieses und das obige Codebeispiel wurde oben hinzugefügt. –

+1

Bin ich falsch oder funktioniert nicht mit 'validate-template' ?? Mein vollständiger Befehl: 'aws cloudformation validate-template --template-body file: //sqs-template.yml --capabilities CAPABILITY_IAM' –

+0

Ich kam hierher und fragte mich, was das Gleiche ist. Wenn Sie den "error" "CapabilitiesReason" sehen: "Die folgenden Ressourcen benötigen Funktionen: [AWS :: IAM :: Role]", dann bedeutet das nur, dass Ihre Vorlage gültig ist und Sie die Rückgabe angeben müssen Fähigkeit beim Erstellen des Stapels. [Quelle] (http://docs.aws.amazon.com/cli/latest/reference/cloudformation/validate-template.html) –

Verwandte Themen