Automate branch creation for staging deployments
For an overview of how this task fits into the design for automatic staging deployments see the feature description in the associated epic
Weekly job(s) on Sunday, for weeks 1,2,3 for gitlab-ce and gitlab-ee though this schedule is arbitrary. It can be once a week, more frequent or less frequent.
- Create a new branches in the following projects
-
In a discussion on 2019-03-25 we decided to not create a ce branchgitlab-ce
gitlab-ee
omnibus-gitlab
-
- The branch point will be the latest green commit in the corresponding repositories
- The proposed format of this branch name will be
auto-deploy-$(cat VERSION)-$CI_PIPELINE_ID
-
The- Decided to use the latest active milestone in gitlab-ceVERSION
is taken from master which helps identify where we are in the release - The
$CI_PIPELINE_ID
is the pipeline ID of the release-tools CI job that creates the branches - It is assumed the
VERSION
file ingitlab-ce
andgitlab-ee
has the same contents-
gitlab-ee
:$VERSION-auto-deploy-$CI_PIPELINE_ID-ee
-
omnibus-gitlab
:$VERSION-auto-deploy-$CI_PIPELINE_ID-ee
-
-
- The
VERSION
file in the omnibus-gitlab repository is updated to the branch name for gitlab-ee$VERSION-auto-deploy-$CI_PIPELINE_ID-ee
Once these branches are created, an omnibus package will be built as documented in https://gitlab.com/gitlab-org/omnibus-gitlab/tree/master/doc/build#building-a-package-from-a-custom-branch
These branches can be referred to as auto-deploy branches
Edited by John Jarvis