2016-07-20 18 views
9

Ich versuche, eine Cloudformationsvorlage zu validieren. Der Befehl Mir Ausgabe ist:Einstellung der Fähigkeit für AWS-Cloud-Templates validieren

# aws cloudformation validate-template --template-body file:///path/to/mytemplate.json 

Die Antwort, die ich bin immer aber ist:

"CapabilitiesReason": "The following resource(s) require capabilities: [AWS::IAM::Role]", 

ich keine Möglichkeit finden, um die Fähigkeit zu setzen leider.

Wie stellen Sie die Fähigkeit ein?

+1

Ich habe das gleiche Problem. '' capabilities = CAPABILITY_IAM'' mit '' create-stack'' cli-Befehlen macht Stapel, aber '' validate-stack'' scheint diese Fähigkeit ebenfalls zu benötigen, aber es gibt keine CLI-Option zum Hinzufügen – Vorsprung

+0

Vielleicht ist es kein Fehler aber einfach informativ? –

+3

Es ist kein Fehler. Es ist eine Benachrichtigung, die Sie darüber informiert, dass Sie beim Ausführen von 'create-stack' oder' update-stack' die Fähigkeit 'CAPABILITY_IAM' angeben müssen. – jbird

Antwort

10

Die Capabilities und CapabilitiesReason Ausgänge von validate-template sind keine Fehler. Sie sind normale Ausgänge, die Ressourcen auflisten, die Funktionen erfordern, die bei der Ausführung von create-stack oder update-stack in der Zukunft spezifiziert werden müssen (über --capabilities).

Sie können bestätigen, dass eine Überprüfung ohne Fehler erfolgreich war, indem Sie überprüfen, dass return code0 angibt, der Befehl wurde erfolgreich abgeschlossen.

Die Dokumentation für die validate-template Ausgänge ist wie folgt:

Capabilities -> (Liste)

Die in der Vorlage gefunden Fähigkeiten. Wenn Ihre Vorlage IAM-Ressourcen enthält, müssen Sie den Wert CAPABILITY_IAM oder CAPABILITY_NAMED_IAM für diesen Parameter angeben, wenn Sie die Aktionen create-stack oder update-stack mit Ihrer Vorlage verwenden. Andernfalls geben diese Aktionen einen Fehler InsufficientCapabilities zurück. Weitere Informationen finden Sie unter Acknowledging IAM Resources in AWS CloudFormation Templates.

CapabilitiesReason -> (string)

Die Liste der Ressourcen, die die Werte in dem Capabilities-Response-Elemente erzeugt.

+3

Schlechtes Design. Die Ausgabe deutet völlig darauf hin, dass etwas nicht stimmt. –

+1

@ MichaelMügge nachdem ich aws für eine Weile benutzt habe, muss ich sagen, dass viele der AWS UI und CLI schlecht designed sind, man muss sich nur an seine Macken gewöhnen :) – Millenjo