- Open GitLab.com then navigate to your project's CI/CD settings page.
- Expand Runners section.
- First, turn off instance runners by unchecking Enable instance runners for this project checkbox on the right side of the page.
- Now, on the left side, look for New project runner button and click on it.
- On the next page, fill the necessary configurations for your runner instance. For the sake of testing, leave everything blank except for Run untagged jobs.
- On the next page, below Step 1 section, copy/save your generated runner authentication token (
glrt-xxxxxxxxxxxxxxxxxxxx
) as you will need it in a further process of the installation. - You can either leave this page open to ensure GitLab runner registration process was successful (you will see a successful message on the bottom of the page once Ansible playbook scripts succeed) or just close it now.
If you haven't done so, create a project runner on GitLab.com.
Next, within the project root folder, run the following command:
cp /.iac/inventories/inventory.example ./iac/inventories/inventory.ini
Adjust the newly created .ini
file (below ./iac/inventories/
) with your server's access info.
Once ready, (navigate to the project root, then) type make build
. This triggers the Ansible deployment playbook and your GitLab Runner instance will be ready soon.
You can also trigger individual Ansible playbooks separately as they are specified within the Makefile.
At a certain point of the deployment, you will be prompted to pass your GitLab Runner authentication token. Paste the token created in create a Project runner section.
For now, you are not able to pass extra parameters to the runner configuration via this deployment tool (for example executor
, image
, etc.). Please, adjust config.toml
manually to meet your needs on your self-hosted runner server (/etc/gitlab-runner/config.toml
).
Once the installation completes, open your project's CI/CD settings page again and expand Runners section. Under Assigned project runners section on the left side, you should see your recently created runner as connected to the remote server with a green dot signaling the active status.
From now on, running CI/CD pipelines within your project will be redirected to your self-hosted runner without CI/CD compute minutes limit.
Coming soon.