Один из вариантов, который вы можете использовать, - это функция уведомлений, которую предлагает CloudFormation API: при вызове UpdateStack
вы можете предоставить список NotificationARNs
, который представляет собой список тем SNS, которые получают уведомления о каждомСвязанные с CloudFormation изменения в вашем стеке.Вы можете установить тему уведомлений SNS на тему SNS, на которую вы подписали свою функцию AWS Lambda.Это, конечно, работает, только если вы не создаете тему SNS как часть вашего стека CloudFormation, вы не полагаетесь на содержимое сообщения SNS и просто нуждаетесь в таком сообщении как триггер, и если вы фильтруете сообщения SNS в своемЛямбда-функция реагирует только на те сообщения, которые важны для вас (например, обновление выполняется только при создании стека, а не при удалении стека).
Использование интерфейса командной строки AWS и его команды deploy
с указаниемARN уведомления будет выглядеть так:
aws cloudformation deploy \
--template-file your-template.yaml \
--stack-name your-stack \
--notification-arns arn:aws:sns:us-east-1:1234567890123456:yourtopic