In part 1 of this series, we created a basic serverless function with AWS Lambda. In part 2, we’re going to use GitHub and Travis-CI to set up a continuous integration workflow. If you completed part 1 successfully, you should have a working AWS Lambda function. However, it’s only exists locally on the machine it was developed on. What if we want to deploy it to an AWS account? With an S3 bucket available, we could simply use sam package and sam deploy to create a deployment package for, and deploy our Lambda function to AWS.
As serverless computing makes its way into the toolbox of more engineers and developers, the need for streamlined development and deployment options grows in importance. This 2-part series will share a basic workflow I’ve developed for developing and deploying serverless functions to AWS. This workflow is going to employ the largely ubiquitous, free platforms offered by GitHub and Travis-CI for version-control and CI, respectively, but it could be adapted to a wider variety of VCS and CI/CD platforms.