AWS Lambda with DevOps

To start implementing DevOps for AWS Lambda, we first create an assembly line. An assembly line outlines the stages involved when a developer creates code, tests the code, and then commits the code into a repository. The source code is pulled from the repository, and is then built and tested. After this, the static code analysis takes place. Once it is deployed into a production-like environment, acceptance tests are run against it. This is how the application is monitored, and how logging is managed. We will look at these stages using the recipes in this section. We will also look at two perspectives of DevOps—one through AWS's own set of tools, and the other through serverless frameworks, such as GitHub, Jenkins, Mocha (for testing), and JSHint (for source code analysis).

So the first step is to set up a local development environment where we can create a folder structure, add and change the source code, add images, and so on. We can run the source code locally, execute tests, and debug them for errors and failures. We will do this using a Node.js tutorial. We will set up a Node.js project from scratch with unit testing, source code analysis, and acceptance testing.

The Node.js application that I have created is a simple task manager. The underlying architecture is AWS Lambda functions with an API gateway to add, update, delete, and list the DynamoDB table. In short, we will be doing the create, read, update, and delete functions through AWS Lambda functions.