Кодовая линия AWS - как обновить код функции лямбды? - PullRequest
0 голосов
/ 22 декабря 2019

Я делаю что-то, что мне кажется простым, но одним шагом мне нужно сделать что-то довольно хакерское, поэтому я предполагаю, что есть лучший способ. У меня есть набор лямбд AWS (в Java, но это, вероятно, не имеет значения), которые я хочу поместить в CI / CD. Итак, теперь у меня есть один репозиторий codecommit с исходным кодом;У меня есть работа по сборке кода, которая создает их и обновляет гамма-версию лямбды. Затем у меня есть еще одно репозиторий codecommit с интеграционными тестами и задание сборки кода, которое создает тесты и запускает их (и не может создать, если тесты не пройдены). Я связал их вместе с codepipeline, и все хорошо!

За исключением того, что если тесты пройдут, я хочу автоматически обновить код функции prod lambda. Единственный способ сделать это - выполнить еще одно третье задание по сборке кода, а затем запустить buildspec.yml, который не выполняет ничего, кроме запуска «aws lambda update-function-code». Кажется, действительно неправильно запускать целую кодовую сборку только для этого. Есть ли способ в codepipeline просто напрямую обновить код лямбда-функции с одним из артефактов в конвейере?

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

1 Ответ

0 голосов
/ 27 декабря 2019

В AWS есть отличное руководство по конвейеру CI / CD для функции Lambda [1]. Это использует CodePipeline и CloudFormation. Это лучший рекомендуемый метод, и я настоятельно рекомендую его использовать, даже если вам, возможно, придется немного освоить CloudFormation, но в долгосрочной перспективе оно того стоит.

[1] https://docs.aws.amazon.com/lambda/latest/dg/build-pipeline.html

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