I would like to deploy my Lambda methods by using Aws Codepipeline. However, when i follow Aws Codepipeline creation wizard, i couldn't understand which one should i choose at beta stage. Because, not only Aws Codedeploy, but also Elastic Beanstalk are concerning only EC2 instances. There is lack of tutorial about telling step by step to create pipeline for our lambda, apigateway deployments. How can i skip beta stage without choosing one of them?, or which one should i choose for my serverless architecture's deployments?.
3
votes
Honestly if I was you I would look into the Serverless framework (github.com/serverless/serverless) along with using Jenkins or TeamCity. You might not need CodePipeline at all, but I think they have a way to integrate with an existing Jenkins server. Your build script on Jenkins or TeamCity would basically use the serverless cli to push the updated lambda functions.
– arjabbar
you can invoke a lambda function, that exists only to build other lambda functions...
– Jared Chmielecki
2 Answers
2
votes
CloudFormation is available in CodePipeline now. This allows you to target cloudformation templates as Actions in the CodePipeline.
Here's an implementation: https://github.com/byu-oit-appdev/iac/tree/master/cloudformation/codepipeline
In this pipeline we deploy a staging lambda, test it's functionality, then deploy the production lambda.