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

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


person ecorvo    schedule 28.07.2015    source источник
comment
Вы можете использовать что-то вроде Code Ship, чтобы развернуть его на S3, когда вы делаете push на GitHub, а затем читаете лямбда из S3 Bucket.   -  person Stefan    schedule 28.07.2015
comment
Вы можете оформить заказ на github.com/garnaat/kappa. Я написал его, так что я предвзято, но я думаю, что он предоставляет достойный инструмент для развертывания Lambda.   -  person garnaat    schedule 29.07.2015
comment
Какие языки вы используете?   -  person h-kippo    schedule 30.07.2015
comment
node.js, есть ли другие инструменты, кроме CLI?   -  person ecorvo    schedule 30.07.2015
comment
Я знаю, что вопрос касался синхронизации версий системы управления версиями с опубликованной Lambda, но эта ссылка может быть полезна людям, которые могут ответить на этот вопрос. Это больше касается закрепления исполняемых версий Lambda, но все еще актуально. Если у вас есть метод автоматического развертывания тегов системы управления версиями для целевой лямбды, вы можете закрепить их с помощью this.   -  person Russ    schedule 25.06.2016


Ответы (3)


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

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

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

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

person countTheRow    schedule 16.09.2015
comment
Я опробовал бессерверную версию, и, несмотря на десять тысяч звезд на github, мне пришлось много с ней бороться, и в моей учетной записи AWS все еще оставался мусор, который было трудно очистить вручную. Определенно многообещающе, но еще не достигнуто. - person Freedom_Ben; 28.07.2016

#!/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

И моя напыщенная речь: я хочу, чтобы лямбда-кодировка облачной информации принимала любой URL-адрес, а не только s3: // bucketname / filename ... чтобы я мог указать его прямо на github.

person Eric Nord    schedule 21.12.2016

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

person Lauri Laanti    schedule 21.10.2015
comment
любой исходный элемент управления, который вы хотите, если ваша лямбда написана на java ... - person shonky linux user; 09.11.2017