From f60da4145d9107aaf5d4b618e567b689784a2bd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matija=20=C4=8Cupi=C4=87?= Date: Thu, 7 Jun 2018 16:47:54 +0000 Subject: [PATCH 1/5] Add deployment strategy docs --- doc/topics/autodevops/index.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index 4bcc7fc6512..522cecbcac7 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -234,6 +234,15 @@ in **Admin Area > Settings > Continuous Integration and Deployment**. Doing that all the projects that haven't explicitly set an option will have Auto DevOps enabled by default. +### Deployment Strategy + +You can change the deployment strategy used by Auto DevOps from within the UI. + +The available options are: + +* Continuous deployment to production +* Automatic deployment to staging, manual deployment to production + ## Stages of Auto DevOps The following sections describe the stages of Auto DevOps. Read them carefully From e4027a746cdf474671319d236f12ed3676ef3d22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matija=20=C4=8Cupi=C4=87?= Date: Thu, 7 Jun 2018 17:25:16 +0000 Subject: [PATCH 2/5] Add option descriptions --- doc/topics/autodevops/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index 522cecbcac7..1211529b8f7 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -241,7 +241,9 @@ You can change the deployment strategy used by Auto DevOps from within the UI. The available options are: * Continuous deployment to production + * This enables Auto Deploy - https://docs.gitlab.com/ee/topics/autodevops/#auto-deploy * Automatic deployment to staging, manual deployment to production + * The user is responsible for deploying to staging and production - https://docs.gitlab.com/ce/ci/environments.html#manually-deploying-to-environments ## Stages of Auto DevOps From 6ca8668f13b0c88ebc9eaad9eca20161fc925e4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matija=20=C4=8Cupi=C4=87?= Date: Thu, 7 Jun 2018 17:26:19 +0000 Subject: [PATCH 3/5] Link option descriptions --- doc/topics/autodevops/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index 1211529b8f7..cf85187a570 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -241,9 +241,9 @@ You can change the deployment strategy used by Auto DevOps from within the UI. The available options are: * Continuous deployment to production - * This enables Auto Deploy - https://docs.gitlab.com/ee/topics/autodevops/#auto-deploy + * This enables [Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/#auto-deploy) * Automatic deployment to staging, manual deployment to production - * The user is responsible for deploying to staging and production - https://docs.gitlab.com/ce/ci/environments.html#manually-deploying-to-environments + * The user is responsible for [deploying to staging and production](https://docs.gitlab.com/ce/ci/environments.html#manually-deploying-to-environments) ## Stages of Auto DevOps From 52fe50b8c57964b620a152889c45a5e96dd42ba1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matija=20=C4=8Cupi=C4=87?= Date: Fri, 8 Jun 2018 11:35:14 +0200 Subject: [PATCH 4/5] Add brief technical explanation for deploy strategies variables --- doc/topics/autodevops/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index cf85187a570..bf60ef2023c 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -237,6 +237,8 @@ enabled by default. ### Deployment Strategy You can change the deployment strategy used by Auto DevOps from within the UI. +This sets or unsets the `STAGING_ENABLED` and `INCREMENTAL_ROLLOUT_ENABLED` +variables. The available options are: From 7fac5c8df121cc6e64af02ed8337ce1813229ec3 Mon Sep 17 00:00:00 2001 From: Achilleas Pipinellis Date: Fri, 8 Jun 2018 18:46:23 +0200 Subject: [PATCH 5/5] Copyedit Auto DevOps deployment strategy docs [ci skip] --- doc/topics/autodevops/index.md | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index bf60ef2023c..610e80b9dc7 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -213,11 +213,11 @@ full use of Auto DevOps. If this is your fist time, we recommend you follow the To enable Auto DevOps to your project: 1. Check that your project doesn't have a `.gitlab-ci.yml`, or remove it otherwise -1. Go to your project's **Settings > CI/CD > General pipelines settings** and - find the Auto DevOps section +1. Go to your project's **Settings > CI/CD > Auto DevOps** 1. Select "Enable Auto DevOps" 1. Optionally, but recommended, add in the [base domain](#auto-devops-base-domain) - that will be used by Kubernetes to deploy your application + that will be used by Kubernetes to [deploy your application](#auto-deploy) + and choose the [deployment strategy](#deployment-strategy) 1. Hit **Save changes** for the changes to take effect Once saved, an Auto DevOps pipeline will be triggered on the default branch. @@ -234,18 +234,23 @@ in **Admin Area > Settings > Continuous Integration and Deployment**. Doing that all the projects that haven't explicitly set an option will have Auto DevOps enabled by default. -### Deployment Strategy +### Deployment strategy -You can change the deployment strategy used by Auto DevOps from within the UI. -This sets or unsets the `STAGING_ENABLED` and `INCREMENTAL_ROLLOUT_ENABLED` -variables. +> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/38542) in GitLab 11.0. + +You can change the deployment strategy used by Auto DevOps by going to your +project's **Settings > CI/CD > Auto DevOps**. The available options are: -* Continuous deployment to production - * This enables [Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/#auto-deploy) -* Automatic deployment to staging, manual deployment to production - * The user is responsible for [deploying to staging and production](https://docs.gitlab.com/ce/ci/environments.html#manually-deploying-to-environments) +- **Continuous deployment to production** - enables [Auto Deploy](#auto-deploy) + by setting the [`STAGING_ENABLED`](#deploy-policy-for-staging-and-production-environments) and + [`INCREMENTAL_ROLLOUT_ENABLED`](#incremental-rollout-to-production) variables + to false. +- **Automatic deployment to staging, manual deployment to production** - sets the + [`STAGING_ENABLED`](#deploy-policy-for-staging-and-production-environments) and + [`INCREMENTAL_ROLLOUT_ENABLED`](#incremental-rollout-to-production) variables + to true, and the user is responsible for manually deploying to staging and production. ## Stages of Auto DevOps @@ -656,6 +661,9 @@ service: > [Introduced](https://gitlab.com/gitlab-org/gitlab-ci-yml/merge_requests/160) in GitLab 10.8. +TIP: **Tip:** +You can also set this inside your [project's settings](#deployment-strategy). + The normal behavior of Auto DevOps is to use Continuous Deployment, pushing automatically to the `production` environment every time a new pipeline is run on the default branch. However, there are cases where you might want to use a @@ -686,6 +694,9 @@ If `CANARY_ENABLED` is defined in your project (e.g., set `CANARY_ENABLED` to > [Introduced](https://gitlab.com/gitlab-org/gitlab-ee/issues/5415) in GitLab 10.8. +TIP: **Tip:** +You can also set this inside your [project's settings](#deployment-strategy). + When you have a new version of your app to deploy in production, you may want to use an incremental rollout to replace just a few pods with the latest code. This will allow you to first check how the app is behaving, and later manually