Book Image

Expert AWS Development

By : Atul Mistry
Book Image

Expert AWS Development

By: Atul Mistry

Overview of this book

Expert AWS Development begins with the installation of the AWS SDK and you will go on to get hands-on experience of creating an application using the AWS Management Console and the AWS Command Line Interface (CLI). Then, you will integrate applications with AWS services such as DynamoDB, Amazon Kinesis, AWS Lambda, Amazon SQS, and Amazon SWF. Following this, you will get well versed with CI/CD workflow and work with four major phases in the release process – Source, Build, Test, and Production. Then, you will learn to apply AWS Developer tools to your Continuous Integration (CI) and Continuous Deployment (CD) workflow. Later, you will learn about user authentication using Amazon Cognito, and also how you can evaluate the best architecture as per your infrastructure costs. You will learn about Amazon EC2 service and will deploy an app using it. You will also deploy a practical real-world example of a CI/CD application with the Serverless Application Framework, which is known as AWS Lambda. Finally, you will learn how to build, develop, and deploy the Application using AWS Developer tools such as AWS CodeCommit, AWS CodeBuild, AWS CodeDeploy, and AWS CodePipeline, as per your project requirements.
Table of Contents (16 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

Continuous Integration – maintaining code repository


CI originates with an extreme programming development process which is one of its original twelve practices. It doesn't require you to deploy any particular tools but it is useful if you use a CI server.

CI means the developer can constantly merge their work with the master/main/trunk branch, so it will be easier for the Test team to test the latest changes with the existing changes. It will help to test code as soon as possible and provide rapid feedback, so that any issue can be identified and fixed as soon as possible. In this process, most of the work is done by automated tests which are part of the unit test framework.

The following is a pictorial representation of CI. In this process, the Dev Team, Testing Team, and Software Configuration Team work together to integrate the latest code and make it available for the next process:

Now let's look at an example.

Let's say you check out the latest working copy from the source code management...