puppet-gitlab_ci_runner

module to mange gitlab CI runners. (Will be) Extracted from https://github.com/voxpupuli/puppet-gitlab


Keywords
git, gitlab, linux-puppet-module, puppet
License
Apache-2.0
Install
puppet module install puppet-gitlab_ci_runner --version 3.0.0

Documentation

Gitlab-CI runner module for Puppet

Build Status Puppet Forge Puppet Forge - downloads Puppet Forge - endorsement Puppet Forge - scores

Table of Contents

  1. Overview
  2. Usage - Configuration options and additional functionality
  3. Limitations - OS compatibility, etc.

Overview

This module installs and configures the Gitlab CI Runner Package or nodes.

Usage

Here is an example how to configure Gitlab CI runners using Hiera:

To use the Gitlab CI runners it is required to have the puppetlabs/docker module.

$manage_docker can be set to false if docker is managed externally.

gitlab_ci_runner::concurrent: 4

gitlab_ci_runner::check_interval: 4

gitlab_ci_runner::metrics_server: "localhost:8888"

gitlab_ci_runner::manage_docker: true

gitlab_ci_runner::config_path: "etc/gitlab-runner/config.toml"

gitlab_ci_runner::runners:
  test_runner1:{}
  test_runner2:{}
  test_runner3:
    url: "https://git.alternative.org/ci"
    registration-token: "abcdef1234567890"
    tags-list: "aws,docker,example-tag"

gitlab_ci_runner::runner_defaults:
  url: "https://git.example.com/ci"
  registration-token: "1234567890abcdef"
  executor: "docker"
  docker-image: "ubuntu:focal"
  builds_dir: "/tmp"
  cache_dir: "/tmp"

To unregister a specific runner you may use ensure param:

gitlab_ci_runner::runners:
  test_runner1:{}
  test_runner2:{}
  test_runner3:
    url: "https://git.alternative.org/ci"
    registration-token: "abcdef1234567890"
    ensure: absent

Limitations

The Gitlab CI runner installation is at the moment only tested on:

  • CentOS 6/7/8
  • Debian 8/9/10
  • Ubuntu 16.04/18.04

A runner configuration is currently only applied if the specific runner does not exist in the config file.