Content
Content
Source phase
During the source phase, developers check changes into a source code repository.
Many teams require peer feedback on code changes before shipping code into production.
Solution:
CodeCommit
Build phase
During the Build phase, an application’s source code is built and the quality of the code is tested on the build machine.
Solution:
CodeBuild
Test phase
The goal of the test phase is to perform tests that cannot be done during the build phase and that require the software to be deployed to a production-like stage.
Often, these tests include testing integration with other live systems, load testing, UI testing, and penetration testing.
Solution:
Third Party Tooling
Production phase
Finally, code gets deployed to production.
Solution:
CodeDeploy
Complete Cycle Solutions:
CodePipeline
CodeStar enables you to quickly develop, build, and deploy applications on AWS.
Continuous integration (CI) is the practice of checking in your code continuously and verifying each change with an automated build and test process.
Every code check-in initiates a build
Builds are fully automated
Tests validate every check-in
Benefits:
Instant feedback for developers - The build must remain fast.
Minimizes the impact of broken builds - Bugs don’t accumulate.
Drives the culture of small, frequent releases.
Continuous delivery extends continuous integration to include testing out to production-like stages and running verification testing against those deployments.
It has some form of manual intervention between a code check-in and when that code is available for customers to use.
Benefits
Developers are no longer thinking about unique cases; the cognitive load is reduced.
You are no longer implementing a barrage of tests on a continuous basis, detecting regressions against small changes.
You no longer have weekly or nightly large number of changes from hundreds of developers.
Continuous deployment
Continuous deployment extends continuous delivery and is the automated release of software to customers from check-in through to production without human intervention. Continuous deployment reduces the time for your customers to get value from the code your team has just written, with the team getting faster feedback on the changes you made. This fast customer feedback loop enables you to iterate quickly, allowing you to deliver more valuable software to your customers quicker.
Build stage – takes the source from the repo and builds an immutable deployment artifact bundle
Release stage – takes the deployment artifact and combines it with the environment’s configuration
Run stage – runs the application in the target environment, running processes against the selected release
Content
Content