Сообщество RSS DEV

Работа с пользовательскими ресурсами CDK и обработка ошибок.

Конструкция AWS CustomResource упрощает вызовы AWS SDK во время развертывания CloudFormation, обычно используемых для задач, таких как получение значений из Parameter Store или вызов функций Lambda. Она использует функцию Lambda-синглетон для выполнения вызовов SDK во время событий жизненного цикла CloudFormation (CREATE, UPDATE, DELETE), сохраняя ответы в S3. Однако, если вызванная функция Lambda завершается с ошибкой, развертывание CloudFormation может завершиться неожиданным успехом. Это происходит потому, что успех или неудача функции Lambda-синглетона отражает только статус вызова API, а не результат вызванной функции Lambda. Чтобы решить эту проблему, пользовательский провайдер заменяет функцию Lambda-синглетон по умолчанию. Этот пользовательский провайдер, использующий либо Framework провайдера, либо прямой подход к функции Lambda, предлагает более тонкий контроль над успехом или неудачей развертывания на основе результата функции Lambda-пользовательского ресурса. Framework провайдера упрощает обработку ответов, автоматически отправляя ответы в корзину S3; прямая обработка функции Lambda требует ручных запросов PUT в предварительно подписанную URL S3. AWS рекомендует использовать Framework провайдера. Пользовательские ресурсы по умолчанию выполняются только при обновлении, когда меняются свойства; метка времени может принудительно выполнить ресурс. Функция Lambda-провайдера выполняется на всех событиях жизненного цикла, требуя условной логики внутри самой функции Lambda. Тщательное рассмотрение событий жизненного цикла (CREATE, UPDATE, DELETE) имеет решающее значение для правильного поведения функции.
favicon
dev.to
Dealing with CDK Custom Resources and failures.
Изображение к статье: Работа с пользовательскими ресурсами CDK и обработка ошибок.
Create attached notes ...