Контроль и развертывание источника для AWS Lambda

Кто-нибудь придумал хорошее решение для управления версиями и разворачивает код для AWS Lambda? Я действительно ненавижу, что мне приходится постоянно архивировать файлы и загружать их. Есть ли лучший способ сделать это, возможно, услугу, которая толкает код на основе изменений в Lambda?

Ответы

Ответ 1

Вы можете попробовать Serverless Framework. Текущая бета выглядит очень многообещающе.

Serverless Framework позволяет создавать цельное приложение без каких-либо серверов. Он объединяет AWS API Gateway с функциями AWS Lambda и поддерживает автоматическое развертывание.

Бета-версия v1 поддерживает только NodeJS, но они планируют поддерживать все языки.

Документы проекта: http://docs.serverless.com/v0.5.0/docs

Ответ 2

#!/bin/bash
cd /your/workspace

#zips up the new code
zip -FSr yourzipfile.zip . -x *.git* *bin/\* *.zip

#Updates function code of lambda and pushes new zip file to s3bucket for cloudformation lambda:codeuri source
aws lambda update-function-code --function-name  arn:aws:lambda:us-west-2:YOURID:function:YOURFUNCTIONNAME --zip-file fileb://yourzipfile.zip
aws s3 cp yourzipfile.zip s3://yourbucketname/yourzipfile.zip

Зависит от установки aws-cli и настройки профиля aws

aws --profile yourProfileName configure

И моя просьба: я хочу облако lambda: codeuri принимает любой url не только s3://bucketname/filename... поэтому я мог бы указать его прямо на github.

Ответ 3

Если вы используете Eclipse, вы можете использовать AWS Toolkit для Eclipse: ссылка. Это позволяет вам использовать любой источник управления, который вы хотите, и развернуть свой код в AWS двумя щелчками.