Версии лямбда увеличиваются, даже если я удаляю стек лямбда (то есть. CFN)? - PullRequest
0 голосов
/ 21 ноября 2018

Я публикую НОВУЮ лямбда-версию для каждой моей лямбда-функции в своем шаблоне облачной информации, используя пользовательский ресурс.Это вызывается всякий раз, когда происходит обновление лямбда-функции.

В моем стеке есть две лямбда-функции (т.е. STACK1), которые созданы с использованием шаблона CFN.Там Арн похож на это.

arn:aws:lambda:us-east-1:xxxx:function:Pikachuu:1
arn:aws:lambda:us-east-1:xxxx:function:Pythachuu:1

После нескольких обновлений в моем стеке (то есть 'STACK1`) стало так:

arn:aws:lambda:us-east-1:xxxx:function:Pikachuu:5
arn:aws:lambda:us-east-1:xxxx:function:Pythachuu:2

Следующий шаг, я удалил вышеуказанный стек (ie'STACK1 ) and created a new stack with different name(i.e.'STACK2).Когда я вижу созданные ARN лямбда-функций, они выглядят так:

arn:aws:lambda:us-east-1:xxxx:function:Pikachuu:6
arn:aws:lambda:us-east-1:xxxx:function:Pythachuu:3

Даже если я удалил стек и создал новый с новым именем, я не знаю, почему увеличиваются версии этих лямбда-ARN.

Когда я углубился в эту проблему, я обнаружил, что она опубликована на основе fuctionname, поэтому, когда я изменил имя функции, она началась с version 1.Даже удаление стека не приводит к удалению версий функции, потому что, когда я использовал то же имя функции, она принимает версию функции.

Я также проверил, присутствуют ли лямбды или нет в лямбда-консоли, просто чтобыдважды проверьте, удаляет ли облачная информация или нет.Да, Cloudformation удаляет его.

Как я могу избежать этого сценария ??

Кстати: такая ситуация не возникает, когда я позволяю AWS определять свою лямбда-функциюимя.

Спасибо.Любая помощь приветствуется

1 Ответ

0 голосов
/ 13 января 2019

Это поведение нельзя изменить.После публикации версии она неизменна (то есть ее нельзя изменить).Это гарантирует, что потребитель функции получит точно такой же код функции и конфигурации.

AWS Lambda назначает монотонно увеличивающийся порядковый номер для управления версиями, даже если функция была удалена и воссоздана.Номера версий никогда не используются повторно, даже для функции, которая была удалена и воссоздана.Этот подход означает, что потребитель версии функции может зависеть от того, какой исполняемый файл этой версии никогда не изменится (кроме случаев, когда он удален).

Подробнее см. В лямбда-версии AWS документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...