Auto DevOps development guidelines
This document provides a development guide for contributors to Auto DevOps.
An Auto DevOps technical walk-through is also available on YouTube.
Development
Auto DevOps builds on top of GitLab CI/CD to create an automatic pipeline
based on your project contents. When Auto DevOps is enabled for a
project, the user does not need to explicitly include any pipeline configuration
through a .gitlab-ci.yml
file.
In the absence of a .gitlab-ci.yml
file, the
Auto DevOps CI/CD template
is used implicitly to configure the pipeline for the project. This
template is a top-level template that includes other sub-templates,
which then defines jobs.
Some jobs use images that are built from external projects:
-
Auto Build uses
configuration
in which the
build
job uses an image that is built using theauto-build-image
project. -
Auto Deploy uses
configuration
in which the jobs defined in this template use an image that is built using the
auto-deploy-image
project. By default, the Helm chart defined inauto-deploy-app
is used to deploy.
There are extra variables that get passed to the CI jobs when Auto
DevOps is enabled that are not present in a typical CI job. These can be
found in
ProjectAutoDevops
.
Development environment
See the Simple way to develop/test Kubernetes workflows with a local cluster issue for discussion around setting up Auto DevOps development environments.
Monitoring on GitLab.com
The metric
auto_devops_completed_pipelines_total
(only available to GitLab team members) counts completed Auto DevOps
pipelines, labeled by status.