Has anybody come up with a good solution to source control and deploy code to AWS Lambda? I really hate that I have to zip the files all the time and upload them. Is there a bet
If you use Eclipse, you can utilize AWS Toolkit for Eclipse: link. This allows you to use any source control you want and deploy your code to AWS with two clicks.
You can try Serverless Framework for this. Current beta looks very promising.
Serverless Framework allow you to build entire application without any servers. It combines AWS API Gateway with AWS Lambda functions and supports auto-deployment.
Beta v1 release supports NodeJS only, but they plan to support for all languages.
Project Docs: http://docs.serverless.com/v0.5.0/docs
#!/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
Depends on aws-cli install and aws profile setup
aws --profile yourProfileName configure
And my rant: I wish cloudformation lambda:codeuri would accept any url not just s3://bucketname/filename... so I could point it straight to github.