2016-07-14 13 views
5

Ich verwende AWS CloudFormation zum Erstellen eines API-Gateways. Ich habe eine AWS::ApiGateway::Deployment Ressource, die gut funktioniert, wenn ich meinen Stapel erstellen. Wenn ich jedoch meinen Stack aktualisiere (z. B. mit einer Änderung in AWS::ApiGateway::Method), wird die API nicht erneut bereitgestellt. Ich muss die API manuell in API Gateway bereitstellen.Wie erzwinge ich die erneute Implementierung meines API-Gateways mithilfe von Cloudformation

Wer weiß, dass ich das Gateway automatisch bereitstellen kann, wenn der Stapel aktualisiert wird?

+0

Jemand aus dem CloudFormation-Team kann möglicherweise eine bessere Erklärung geben, aber nach meinem Verständnis müssen Sie jedes Mal, wenn Sie Ihren Stack aktualisieren, eine neue Bereitstellungsressource in Ihrer Vorlage erstellen. –

Antwort

7

Ich habe einen Datums-/Zeitstempel in meine Beschreibung eingefügt, um eine erneute Bereitstellung bei jeder Aktualisierung der Vorlagen zu erzwingen. Das ist ziemlich einfach für mich, da ich Troposphäre benutze und es scheint, als ob es den Trick macht. Alternativ könnten Sie einen Datums-/Zeitstempel als Parameter übergeben.

+3

Dies funktioniert nicht mehr. Wenn Sie die Beschreibung der AWS :: ApiGateway :: Deployment-Ressource ändern, wird nur das Beschreibungsfeld der Implementierung aktualisiert, und es wird kein neues erstellt. Die einzige Möglichkeit besteht darin, die Bereitstellung mit einer benutzerdefinierten Lambda-Ressource zu erstellen. –

+0

@ ÇağatayGürtürk ist richtig. Es gibt einen relevanten SO-Post [hier] (https://StackOverflow.com/questions/41423439/cloudformation-doesnt-deploy-to-api-gateway-stages-on-update) mit mehr Informationen. ** Beachten Sie jedoch die Kommentare in der angenommenen Antwort. ** Es scheint, dass AWS eine andere Lösung vorgeschlagen hat. Ich warte immer noch darauf, von OP zu diesem Artikel zu hören, was sie vorschlagen würden. –