AWS Макросы CloudFormation не вызываются при удалении стеков. Они вызываются только при создании / обновлении стеков. - PullRequest
0 голосов
/ 18 января 2020

Я клонировал этот репозиторий и успешно развернул стек Count .

https://github.com/awslabs/aws-cloudformation-templates/blob/master/aws/services/CloudFormation/MacrosExamples/Count/template.yaml

Функция макроса (CountMacroFunction) вызывается при развертывании Count-test stack (test.yaml).

Могу ли я узнать, как вызвать этот макрос при удалении стека, пожалуйста?

1 Ответ

1 голос
/ 19 января 2020

Потому что Count - это макрос, а не пользовательский ресурс. Макрос является препроцессором для шаблона Cloudformation. Он берет шаблон, изменяет его и выводит новый шаблон. Затем Cloudformation продолжает создавать стек с использованием обновленного шаблона.

Когда вы удаляете стек, он удаляет все ресурсы, определенные в стеке, поэтому нет необходимости повторно вызывать макрос.

В отличие от этого пользовательский ресурс выполняется при развертывании и используется для контролировать ресурсы, которые Cloudformation не поддерживает, или реализовывать другие пользовательские логи c. Пользовательский ресурс будет вызываться при удалении стека, чтобы дать ему возможность очистить созданные им ресурсы.

...