Continuous Deployment: Difference between revisions
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=Internal= | =Internal= | ||
* [[ | * [[Continuous_Delivery#Overview|Continuous Delivery]] | ||
* [[Continuous Integration]] | * [[Continuous Integration]] | ||
=Overview= | =Overview= | ||
Line 13: | Line 10: | ||
* Manual functional test | * Manual functional test | ||
* Testing of non-functional requirements | * Testing of non-functional requirements | ||
The target environments include Test, Stage and Prod. | |||
This is the avenue of various [[#Rollout_Strategies|rollout strategies]]. | |||
=<span id='Continuous_Deployment_Pipeline'></span>Deployment Pipeline= | |||
A '''continuous deployment pipeline''' is the automated expression of the process for getting software from version control through building, testing and deployment to the end users, in production. | |||
Every change to the software being built, committed in source control, goest through a complex process on its way of being released. This process involves building the software in a reliable and repeatable manner, as well as progressing the built software (called the "build") through multiple stages of testing and deployment. | |||
One tool that provides continuous delivery pipeline functionality is [[Jenkins_Concepts#Pipeline|Jenkins]]. Another is [[AWS_CodePipeline_Concepts#Pipeline|AWS CodePipeline]]. | |||
==<span id='Continuous_Delivery_for_Infrastructure_Code'></span>Infrastructure Delivery Pipeline== | |||
{{Internal|Infrastructure_Code_Continuous_Delivery_Concepts#Infrastructure_Delivery_Pipeline|Infrastructure Delivery Pipelines}} | |||
==Kinds of Deployment Pipelines== | |||
Commit, Acceptance, UAT, Production. | |||
=Rollout Strategies= | |||
==Blue-Green Deployments== | |||
Also known as "red/black". | |||
{{Internal|Blue-Green Deployments#Overview|Blue-Green Deployments}} | |||
==Canary Rollout== | |||
==Dark Rollout== | |||
==Highlander Rollout== | |||
=Canary Release= | |||
{{Internal|Canary Release|Canary Release}} |
Latest revision as of 00:05, 7 April 2022
Internal
Overview
- Deployment of artifacts and configuration in a target environment
- Automated integration tests
- Automated functional tests
- Manual functional test
- Testing of non-functional requirements
The target environments include Test, Stage and Prod.
This is the avenue of various rollout strategies.
Deployment Pipeline
A continuous deployment pipeline is the automated expression of the process for getting software from version control through building, testing and deployment to the end users, in production.
Every change to the software being built, committed in source control, goest through a complex process on its way of being released. This process involves building the software in a reliable and repeatable manner, as well as progressing the built software (called the "build") through multiple stages of testing and deployment.
One tool that provides continuous delivery pipeline functionality is Jenkins. Another is AWS CodePipeline.
Infrastructure Delivery Pipeline
Kinds of Deployment Pipelines
Commit, Acceptance, UAT, Production.
Rollout Strategies
Blue-Green Deployments
Also known as "red/black".