This role will install the official GitLab Runner (fork from haroldb) with updates. Needed something simple and working, this did the trick for me. Open for changes though.
This role requires Ansible 2.0 or higher.
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_registration_token
The GitLab registration token. If this is specified, a runner will be registered to a GitLab server.
gitlab_runner_coordinator_url
The GitLab coordinator URL.
Defaults to https://gitlab.com/ci
.
gitlab_runner_description
The description of the runner.
Defaults to the hostname.
gitlab_runner_limit
The per-registration-token limit on concurrent builds
Defaults to 0
.
gitlab_runner_executor
The executor used by the runner.
Defaults to shell
.
gitlab_runner_docker_image
The default Docker image to use. Required when executor is docker
.
gitlab_runner_tags
The tags assigned to the runner,
Defaults to an empty list.
gitlab_runner_list
You can add multiple runners in one run. It is a list of dict based on the settings available in one runner. You must set different descriptions for the runners to work.
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
- hosts: all
remote_user: root
vars_files:
- vars/main.yml
roles:
- { role: riemers.gitlab-runner }
Inside vars/main.yml
gitlab_runner_registration_token: 'HUzTMgnxk17YV8Rj8ucQ'
gitlab_runner_description: 'Example GitLab Runner'
gitlab_runner_limit: 2
gitlab_runner_tags:
- node
- ruby
- mysql
gitlab_runner_docker_volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
- "/cache"