Skip to content

Do foundational work to support to support gitlab-org/gitlab default branch

Overview

gitlab-com/gl-infra/delivery#1357 (closed) plans to rename gitlab-org/gitlab default branch from master to main, the timeline is still in the works (it might happen during the first quarter of 2021) but when it happens we should be prepared.

Let's use this issue to discuss what needs to be done on Omnibus before the switch.

Proposal

Initial plan could be as follow:

  1. Identify what areas of the codebase need to be adjusted.
    • From a quick grep search it seems we do reference gitlab-org/gitlab and gitlab-org/gitlab-foss master branches in some parts of the Omnibus codebase (see below for details)
  2. Fetch somehow gitlab-org/gitlab default branch
  3. Use that branch instead of a hardcoded master string
Files that reference a harcoded master string
./gitlab-ci-config/gitlab-com.yml:113:    - wget https://gitlab.com/gitlab-org/gitlab/-/raw/master/scripts/trigger-build
./config/software/git.rb:24:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/install/installation.md
./config/software/git.rb:28:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/.gitlab-ci.yml
./config/software/git.rb:29:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/system_check/app/git_version_check.rb
./README.md:329:[CE README]: https://gitlab.com/gitlab-org/gitlab-foss/blob/master/README.md
./README.md:331:[database.yml.mysql]: https://gitlab.com/gitlab-org/gitlab-foss/blob/master/config/database.yml.mysql
./CONTRIBUTING.md:26:The omnibus-gitlab project uses the [definition of done as noted in GitLab Community Edition (and Enterprise Edition)](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/development/contributing/merge_request_workflow.md#definition-of-done).
./files/gitlab-config-template/gitlab.rb.template:812:##! Docs: https://gitlab.com/gitlab-org/gitlab-workhorse/blob/master/README.md
./files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb:6:## Modified from https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/support/nginx/gitlab-ssl & https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/support/nginx/gitlab
./doc/settings/gitlab.yml.md:10:[`gitlab.yml`](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/config/gitlab.yml.example). If you want to change a `gitlab.yml` setting
./doc/settings/gitlab.yml.md:50:- the [`gitlab.yml.example`](https://gitlab.com/gitlab-org/gitlab/blob/master/config/gitlab.yml.example)
./doc/settings/puma.md:58:a worker if it exceeds a [memory limit](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/cluster/puma_worker_killer_initializer.rb). Additionally, rolling restarts of
./doc/settings/puma.md:70:A [timeout of 60 seconds](https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/initializers/rack_timeout.rb)
./doc/settings/nginx.md:294:   If you are using SELinux and your web server runs under a restricted SELinux profile you may have to [loosen the restrictions on your web server](https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server/apache#selinux-modifications).
./doc/settings/nginx.md:326:   Go to [GitLab recipes repository](https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server) and look for the omnibus
./doc/common_installation_problems/README.md:435:repository](https://gitlab.com/gitlab-org/gitlab-foss/tree/master/app/assets)
./doc/development/pipelines.md:257:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile). This
./doc/development/pipelines.md:306:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile).
./doc/development/pipelines.md:366:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile) and
./doc/package-information/licensing.md:57:This list is currently sourced from the [GitLab development documentation on licensing](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/development/licensing.md).
./doc/package-information/omnibus_packages.md:33:application depends on a number of [Ruby gems](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/Gemfile.lock). Some of these dependencies also

./gitlab-ci-config/gitlab-com.yml:113:    - wget https://gitlab.com/gitlab-org/gitlab/-/raw/master/scripts/trigger-build
./config/software/git.rb:24:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/install/installation.md
./config/software/git.rb:28:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/.gitlab-ci.yml
./config/software/git.rb:29:# - https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/system_check/app/git_version_check.rb
./README.md:329:[CE README]: https://gitlab.com/gitlab-org/gitlab-foss/blob/master/README.md
./README.md:331:[database.yml.mysql]: https://gitlab.com/gitlab-org/gitlab-foss/blob/master/config/database.yml.mysql
./CONTRIBUTING.md:26:The omnibus-gitlab project uses the [definition of done as noted in GitLab Community Edition (and Enterprise Edition)](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/development/contributing/merge_request_workflow.md#definition-of-done).
./files/gitlab-config-template/gitlab.rb.template:812:##! Docs: https://gitlab.com/gitlab-org/gitlab-workhorse/blob/master/README.md
./files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb:6:## Modified from https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/support/nginx/gitlab-ssl & https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/support/nginx/gitlab
./doc/settings/gitlab.yml.md:10:[`gitlab.yml`](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/config/gitlab.yml.example). If you want to change a `gitlab.yml` setting
./doc/settings/gitlab.yml.md:50:- the [`gitlab.yml.example`](https://gitlab.com/gitlab-org/gitlab/blob/master/config/gitlab.yml.example)
./doc/settings/puma.md:58:a worker if it exceeds a [memory limit](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/cluster/puma_worker_killer_initializer.rb). Additionally, rolling restarts of
./doc/settings/puma.md:70:A [timeout of 60 seconds](https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/initializers/rack_timeout.rb)
./doc/settings/nginx.md:294:   If you are using SELinux and your web server runs under a restricted SELinux profile you may have to [loosen the restrictions on your web server](https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server/apache#selinux-modifications).
./doc/settings/nginx.md:326:   Go to [GitLab recipes repository](https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server) and look for the omnibus
./doc/common_installation_problems/README.md:435:repository](https://gitlab.com/gitlab-org/gitlab-foss/tree/master/app/assets)
./doc/development/pipelines.md:257:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile). This
./doc/development/pipelines.md:306:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile).
./doc/development/pipelines.md:366:codebase](https://gitlab.com/gitlab-org/gitlab/blob/master/qa/Dockerfile) and
./doc/package-information/licensing.md:57:This list is currently sourced from the [GitLab development documentation on licensing](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/doc/development/licensing.md).
./doc/package-information/omnibus_packages.md:33:application depends on a number of [Ruby gems](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/Gemfile.lock). Some of these dependencies also