Continuous Deployment: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
Line 17: Line 17:


This is the avenue of various [[#Rollout_Strategies|rollout strategies]].
This is the avenue of various [[#Rollout_Strategies|rollout strategies]].
=Continuous 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}}


=Rollout Strategies=
=Rollout Strategies=

Revision as of 22:48, 6 April 2022

Internal

Continuous Delivery vs. Continuous Deployment

Continuous Delivery vs. Continuous Deployment

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.

Continuous 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

Infrastructure Delivery Pipelines

Rollout Strategies

Blue-Green Deployments

Also known as "red/black".

Blue-Green Deployments

Canary Rollout

Dark Rollout

Highlander Rollout

Canary Release

Canary Release