Signed-off-by: Balasankar "Balu" C's avatarBalasankar "Balu" C <[email protected]>
parent 8ef6ff23
Pipeline #208268163 passed with stages
in 82 minutes and 2 seconds
# Cutting New Releases
# GitLab Builder Images
This project builds and publishes Docker images that are used by
the CI pipeline of [omnibus-gitlab](https://gitlab.com/gitlab-org/omnibus-gitlab) to build official GitLab packages. It
contains Dockerfiles for all the official OSs for which packages are provided,
with a few additional Docker images used by various other housekeeping CI jobs in
Push mirroring is configured from
[GitLab.com repository](https://gitlab.com/gitlab-org/gitlab-omnibus-builder)
to the [dev.gitlab.org mirror](https://dev.gitlab.org/cookbooks/gitlab-omnibus-builder)
## Cutting new releases
To cut a new release:
......@@ -11,91 +23,6 @@ This will trigger a continuous integration job that creates the images, tags
them with `VERSION_NUMBER`, and makes them available in the container
# gitlab-omnibus-builder-cookbook
This cookbook sets up build machines for omnibus-gitlab.
## Supported Platforms
Works on Ubuntu 12.04, 14.04, Debian 7, CentOS 6, 7.
#### Restricted resources
See [documentation for SLES](doc/sles.md) for details on restrictions.
## Recipe: default
Create a build environment without setting up CI. To set up a build environment
without a Chef server you can use the following script.
Note that on RHEL 7, you need to add EPEL for the 'fakeroot' dependency.
set -e
set -u
# Install the Chef client
curl -L https://www.chef.io/chef/install.sh | sudo bash
# Download the gitlab-omnibus-builder cookbook using Git and run its 'default' recipe
mkdir "$chef_root"
cd "$chef_root"
mkdir cookbooks
git clone https://gitlab.com/gitlab-org/gitlab-omnibus-builder.git cookbooks/gitlab-omnibus-builder
sed -i.bak '/depend/d' ./cookbooks/gitlab-omnibus-builder/metadata.rb
/opt/chef/bin/chef-client -z -r 'recipe[gitlab-omnibus-builder::default]'
## Recipe: ci
Set up a GitLab runner for integration with GitLab CI. Includes the 'default'
## Manual setup steps (CI)
Once you have provisioned an omnibus build box, you need to do the following
manual setup steps.
First, register the builder as a GitLab CI Multi Runner with the coordinator of your
# on the new build box
sudo su - gitlab_ci_multi_runner
cd /home/gitlab_ci_multi_runner
# enter the CI url and token
gitlab-ci-multi-runner register
Second, drop in the secrets needed to clone GitLab EE and upload packages to
# In the chef-repo:
bundle exec rake edit_role_secrets[omnibus-builder]
# No need to edit the secrets, just save and exit. This makes sure the new node
# can access the secrets.
## Attributes
## Usage
### gitlab-omnibus-builder::default
Include `gitlab-omnibus-builder` in your node's `run_list`:
"run_list": [
## License and Authors
This cookbook is distributed under the MIT license, see LICENSE.
Contents of this project are distributed under the MIT license, see LICENSE.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment