gitlab_runner
GitLab Runner
This role will install the official GitLab Runner (fork from DBLaci, which forked it from riemers, which in turn forked it from haroldb) with updates. Needed something simple and working, this did the trick for me. Open for changes though.
NOTE:
Even though it's a fork it is NOT backward compatible:
- it will only install gitlab-runner (all "gitlab-multi-runner" references were scraped)
- all per-runner global variables were removed
- there is no "default runner"
- there is a list of runner to be configured (1 machine can have more than 1 runner... be bold)
Requirements
This role requires Ansible 2.0 or higher.
Role Variables
gitlab_runner_concurrent
The maximum number of jobs to run concurrently.
Defaults to the number of processor cores.
gitlab_check_interval
The interval of job poll in seconds
Defaults to the upstream default (3 seconds)
gitlab_runner_list
This list will hold the multiple runners. It is a list of dict based on the settings available in one runner. You must set different descriptions for the runners to work.
NOTE:
Runners are created for the first time. You can't change the settings of existsing ones with this role.
See the config for more options
Example Playbook
- hosts: runner_hosts
become: yes
roles:
- eRadical.gitlab-runner
Example for requirements.yml
- name: eRadical.gitlab-runner
src: https://github.com/eRadical/ansible-gitlab-runner
scm: git
version: commit_id_here
Inside group_vars/runner_hosts.yml
gitlab_runner_concurrent: 1
gitlab_check_interval: 3
gitlab_runner_list:
- coordinator_url: 'https://your.gitlab.installation/ci'
registration_token: ''
description: '{{ ansible_hostname }}__shell'
output_limit: 102400 # 100MB - --output-limit flag is in Kb
executor: 'shell'
tags:
- shell
- bash
- coordinator_url: 'https://your.gitlab.installation/ci'
registration_token: ''
description: '{{ ansible_hostname }}__docker'
output_limit: 102400 # 100MB - --output-limit flag is in Kb
executor: 'docker'
docker_image: "centos:latest"
docker_tlsverify: "false"
docker_pull_policy: "always"
docker_privileged: "true"
tags:
- docker
- container
ansible-galaxy install eRadical/ansible-gitlab-runner