Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
4f7f5c49
Commit
4f7f5c49
authored
Oct 24, 2018
by
Daniel Gruesso
Committed by
Mike Lewis
Oct 24, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
clarify auto review apps deployment, jobs skipped by license, disabling at…
parent
220b9d7b
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
76 additions
and
39 deletions
+76
-39
doc/topics/autodevops/index.md
doc/topics/autodevops/index.md
+76
-39
No files found.
doc/topics/autodevops/index.md
View file @
4f7f5c49
...
@@ -2,14 +2,15 @@
...
@@ -2,14 +2,15 @@
> [Introduced][ce-37115] in GitLab 10.0. Generally available on GitLab 11.0.
> [Introduced][ce-37115] in GitLab 10.0. Generally available on GitLab 11.0.
Auto DevOps automatically detects, builds, tests, deploys, and monitors your
Auto DevOps provides pre-defined CI/CD configuration which allows you to automatically detect, build, test,
applications.
deploy, and monitor your applications. Leveraging CI/CD best practices and tools, Auto DevOps aims
to simplify the setup and execution of a mature & modern software development lifecycle.
## Overview
## Overview
NOTE:
**Enabled by default:**
NOTE:
**Enabled by default:**
Starting with GitLab 11.3, the Auto DevOps pipeline
will be
enabled by default for all
Starting with GitLab 11.3, the Auto DevOps pipeline
is
enabled by default for all
projects. If it
's not
explicitly enabled for the project, Auto DevOps will be automatically
projects. If it
has not been
explicitly enabled for the project, Auto DevOps will be automatically
disabled on the first pipeline failure. Your project will continue to use an alternative
disabled on the first pipeline failure. Your project will continue to use an alternative
[
CI/CD configuration file
](
../../ci/yaml/README.md
)
if one is found. A GitLab
[
CI/CD configuration file
](
../../ci/yaml/README.md
)
if one is found. A GitLab
administrator can
[
change this setting
](
../../user/admin_area/settings/continuous_integration.html#auto-devops
)
administrator can
[
change this setting
](
../../user/admin_area/settings/continuous_integration.html#auto-devops
)
...
@@ -17,33 +18,38 @@ in the admin area.
...
@@ -17,33 +18,38 @@ in the admin area.
With Auto DevOps, the software development process becomes easier to set up
With Auto DevOps, the software development process becomes easier to set up
as every project can have a complete workflow from verification to monitoring
as every project can have a complete workflow from verification to monitoring
with
out needing to configure anything
. Just push your code and GitLab takes
with
minimal configuration
. Just push your code and GitLab takes
care of everything else. This makes it easier to start new projects and brings
care of everything else. This makes it easier to start new projects and brings
consistency to how applications are set up throughout a company.
consistency to how applications are set up throughout a company.
## Quick start
## Quick start
If you are using GitLab.com, see the
[
quick start guide
](
quick_start_guide.md
)
If you are using GitLab.com, see the
[
quick start guide
](
quick_start_guide.md
)
for using Auto DevOps with GitLab.com and a Kubernetes cluster on Google Kubernetes
for how to use Auto DevOps with GitLab.com and a Kubernetes cluster on Google Kubernetes
Engine.
Engine (GKE).
If you are using a self-hosted instance of GitLab, you will need to configure the
[
Google OAuth2 OmniAuth Provider
](
../../integration/google.md
)
before
you can configure a cluster on GKE. Once this is set up, you can follow the steps on the
[
quick start guide
](
quick_start_guide.md
)
to get started.
## Comparison to application platforms and PaaS
## Comparison to application platforms and PaaS
Auto DevOps provides functionality
described by others as
an application
Auto DevOps provides functionality
that is often included in
an application
platform or a
s a
Platform as a Service (PaaS). It takes inspiration from the
platform or a Platform as a Service (PaaS). It takes inspiration from the
innovative work done by
[
Heroku
](
https://www.heroku.com/
)
and goes beyond it
innovative work done by
[
Heroku
](
https://www.heroku.com/
)
and goes beyond it
in
a couple of
ways:
in
multiple
ways:
1.
Auto DevOps works with any Kubernetes cluster
,
you're not limited to running
1.
Auto DevOps works with any Kubernetes cluster
;
you're not limited to running
on GitLab's infrastructure
(note that many features also work without Kubernetes).
on GitLab's infrastructure
. (Note that many features also work without Kubernetes.)
1.
There is no additional cost (no markup on the infrastructure costs), and you
1.
There is no additional cost (no markup on the infrastructure costs), and you
can use a self-hosted Kubernetes cluster or Containers as a Service on any
can use a self-hosted Kubernetes cluster or Containers as a Service on any
public cloud (for example
[
Google Kubernetes Engine
](
https://cloud.google.com/kubernetes-engine/
)
).
public cloud (for example
,
[
Google Kubernetes Engine
](
https://cloud.google.com/kubernetes-engine/
)
).
1.
Auto DevOps has more features including security testing, performance testing,
1.
Auto DevOps has more features including security testing, performance testing,
and code quality testing.
and code quality testing.
1.
It offers an incremental graduation path. If you need advanced customizations
1.
Auto DevOps offers an incremental graduation path. If you need advanced customizations,
you can start modifying the templates without having to start over on a
you can start modifying the templates without having to start over on a
completely different platform.
completely different platform.
Review the
[
customizing
](
#customizing
)
section for more information.
## Features
## Features
...
@@ -197,23 +203,37 @@ and verifying that your app is deployed as a review app in the Kubernetes
...
@@ -197,23 +203,37 @@ and verifying that your app is deployed as a review app in the Kubernetes
cluster with the
`review/*`
environment scope. Similarly, you can check the
cluster with the
`review/*`
environment scope. Similarly, you can check the
other environments.
other environments.
## Enabling Auto DevOps
## Enabling
/Disabling
Auto DevOps
If you haven't done already, read the
[
requirements
](
#requirements
)
to make
When first using Auto Devops, review the
[
requirements
](
#requirements
)
to ensure all necessary components
to make
full use of Auto DevOps. If this is your fist time, we recommend you follow the
full use of Auto DevOps
are available
. If this is your fist time, we recommend you follow the
[
quick start guide
](
quick_start_guide.md
)
.
[
quick start guide
](
quick_start_guide.md
)
.
To enable Auto DevOps to your project:
GitLab.com users can enable/disable Auto DevOps at the project-level only. Self-managed users
can enable/disable Auto DevOps at either the project-level or instance-level.
### Enabling/disabling Auto DevOps at the instance-level (Administrators only)
1.
Go to
**Admin area > Settings > Continuous Integration and Deployment**
.
1.
Toggle the checkbox labeled
**Default to Auto DevOps pipeline for all projects**
.
1.
If enabling, optionally set up the Auto DevOps
[
base domain
](
#auto-devops-base-domain
)
which will be used for Auto Deploy and Auto Review Apps.
1.
Click
**Save changes**
for the changes to take effect.
NOTE:
**Note:**
Even when disabled at the instance level, project maintainers are still able to enable
Auto DevOps at the project level.
### Enabling/disabling Auto DevOps at the project-level
1.
Check that your project doesn't have a
`.gitlab-ci.yml`
, or
remove it otherwise
1.
Check that your project doesn't have a
`.gitlab-ci.yml`
, or
if one exists, remove it.
1.
Go to your project's
**Settings > CI/CD > Auto DevOps**
1.
Go to your project's
**Settings > CI/CD > Auto DevOps**
.
1.
Select "Enable Auto DevOps"
1.
Check the
**Default to Auto DevOps pipeline**
checkbox.
1.
Optionally, but recommended, add in the
[
base domain
](
#auto-devops-base-domain
)
1.
Optionally, but recommended, add in the
[
base domain
](
#auto-devops-base-domain
)
that will be used by
Kubernete
s to
[
deploy your application
](
#auto-deploy
)
that will be used by
Auto DevOp
s to
[
deploy your application
](
#auto-deploy
)
and choose the
[
deployment strategy
](
#deployment-strategy
)
and choose the
[
deployment strategy
](
#deployment-strategy
)
.
1.
Hit
**Save changes**
for the changes to take effect
1.
Click
**Save changes**
for the changes to take effect.
Once saved, an Auto DevOps pipeline will be
triggered on the default branch.
When the feature has been enabled, an Auto DevOps pipeline is
triggered on the default branch.
NOTE:
**Note:**
NOTE:
**Note:**
For GitLab versions 10.0 - 10.2, when enabling Auto DevOps, a pipeline needs to be
For GitLab versions 10.0 - 10.2, when enabling Auto DevOps, a pipeline needs to be
...
@@ -221,17 +241,17 @@ manually triggered either by pushing a new commit to the repository or by visiti
...
@@ -221,17 +241,17 @@ manually triggered either by pushing a new commit to the repository or by visiti
`https://example.gitlab.com/<username>/<project>/pipelines/new`
and creating
`https://example.gitlab.com/<username>/<project>/pipelines/new`
and creating
a new pipeline for your default branch, generally
`master`
.
a new pipeline for your default branch, generally
`master`
.
NOTE:
**Note:**
If you are a GitLab Administrator, you can
[
enable/disable Auto DevOps instance-wide
](
../../user/admin_area/settings/continuous_integration.md#auto-devops
)
,
and all projects that haven't explicitly set an option will have Auto DevOps
enabled/disabled by default.
NOTE:
**Note:**
NOTE:
**Note:**
There is also a feature flag to enable Auto DevOps to a percentage of projects
There is also a feature flag to enable Auto DevOps to a percentage of projects
which can be enabled from the console with
which can be enabled from the console with
`Feature.get(:force_autodevops_on_by_default).enable_percentage_of_actors(10)`
.
`Feature.get(:force_autodevops_on_by_default).enable_percentage_of_actors(10)`
.
### Disable Auto DevOps at the project level
1.
Go to your project's
**Settings > CI/CD > Auto DevOps**
.
1.
Uncheck the
**Default to Auto DevOps pipeline**
checkbox.
1.
Click
**Save changes**
for the changes to take effect.
### Deployment strategy
### Deployment strategy
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/38542) in GitLab 11.0.
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/38542) in GitLab 11.0.
...
@@ -299,8 +319,7 @@ static analysis and other code checks on the current code. The report is
...
@@ -299,8 +319,7 @@ static analysis and other code checks on the current code. The report is
created, and is uploaded as an artifact which you can later download and check
created, and is uploaded as an artifact which you can later download and check
out.
out.
In GitLab Starter, differences between the source and
Any differences between the source and target branches are also
target branches are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html
)
.
### Auto SAST **[ULTIMATE]**
### Auto SAST **[ULTIMATE]**
...
@@ -313,9 +332,12 @@ analysis on the current code and checks for potential security issues. Once the
...
@@ -313,9 +332,12 @@ analysis on the current code and checks for potential security issues. Once the
report is created, it's uploaded as an artifact which you can later download and
report is created, it's uploaded as an artifact which you can later download and
check out.
check out.
In GitLab Ultimate, a
ny security warnings are also
A
ny security warnings are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/sast.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/sast.html
)
.
NOTE:
**Note:**
The Auto SAST stage will be skipped on licenses other than Ultimate.
### Auto Dependency Scanning **[ULTIMATE]**
### Auto Dependency Scanning **[ULTIMATE]**
> Introduced in [GitLab Ultimate][ee] 10.7.
> Introduced in [GitLab Ultimate][ee] 10.7.
...
@@ -329,6 +351,9 @@ check out.
...
@@ -329,6 +351,9 @@ check out.
Any security warnings are also
Any security warnings are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/dependency_scanning.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/dependency_scanning.html
)
.
NOTE:
**Note:**
The Auto Dependency Scanning stage will be skipped on licenses other than Ultimate.
### Auto License Management **[ULTIMATE]**
### Auto License Management **[ULTIMATE]**
> Introduced in [GitLab Ultimate][ee] 11.0.
> Introduced in [GitLab Ultimate][ee] 11.0.
...
@@ -342,6 +367,9 @@ check out.
...
@@ -342,6 +367,9 @@ check out.
Any licenses are also
Any licenses are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/license_management.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/license_management.html
)
.
NOTE:
**Note:**
The Auto License Management stage will be skipped on licenses other than Ultimate.
### Auto Container Scanning
### Auto Container Scanning
> Introduced in GitLab 10.4.
> Introduced in GitLab 10.4.
...
@@ -352,9 +380,12 @@ Docker image and checks for potential security issues. Once the report is
...
@@ -352,9 +380,12 @@ Docker image and checks for potential security issues. Once the report is
created, it's uploaded as an artifact which you can later download and
created, it's uploaded as an artifact which you can later download and
check out.
check out.
In GitLab Ultimate, a
ny security warnings are also
A
ny security warnings are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/container_scanning.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/container_scanning.html
)
.
NOTE:
**Note:**
The Auto Container Scanning stage will be skipped on licenses other than Ultimate.
### Auto Review Apps
### Auto Review Apps
NOTE:
**Note:**
NOTE:
**Note:**
...
@@ -374,6 +405,9 @@ branch's code so developers, designers, QA, product managers, and other
...
@@ -374,6 +405,9 @@ branch's code so developers, designers, QA, product managers, and other
reviewers can actually see and interact with code changes as part of the review
reviewers can actually see and interact with code changes as part of the review
process. Auto Review Apps create a Review App for each branch.
process. Auto Review Apps create a Review App for each branch.
Auto Review Apps will deploy your app to your Kubernetes cluster only. When no cluster
is available, no deployment will occur.
The Review App will have a unique URL based on the project name, the branch
The Review App will have a unique URL based on the project name, the branch
name, and a unique number, combined with the Auto DevOps base domain. For
name, and a unique number, combined with the Auto DevOps base domain. For
example,
`user-project-branch-1234.example.com`
. A link to the Review App shows
example,
`user-project-branch-1234.example.com`
. A link to the Review App shows
...
@@ -391,9 +425,12 @@ to perform an analysis on the current code and checks for potential security
...
@@ -391,9 +425,12 @@ to perform an analysis on the current code and checks for potential security
issues. Once the report is created, it's uploaded as an artifact which you can
issues. Once the report is created, it's uploaded as an artifact which you can
later download and check out.
later download and check out.
In GitLab Ultimate, a
ny security warnings are also
A
ny security warnings are also
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/dast.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/dast.html
)
.
NOTE:
**Note:**
The Auto DAST stage will be skipped on licenses other than Ultimate.
### Auto Browser Performance Testing **[PREMIUM]**
### Auto Browser Performance Testing **[PREMIUM]**
> Introduced in [GitLab Premium][ee] 10.4.
> Introduced in [GitLab Premium][ee] 10.4.
...
@@ -406,8 +443,8 @@ Auto Browser Performance Testing utilizes the [Sitespeed.io container](https://h
...
@@ -406,8 +443,8 @@ Auto Browser Performance Testing utilizes the [Sitespeed.io container](https://h
/direction
/direction
```
```
In GitLab Premium, performance differences between the source
Any performance differences between the source and target branches are also
and target branches are
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/browser_performance_testing.html
)
.
[
shown in the merge request widget
](
https://docs.gitlab.com/ee//user/project/merge_requests/browser_performance_testing.html
)
.
### Auto Deploy
### Auto Deploy
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment