Контроль и развертывание источника для 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 двумя щелчками.