lean_delivery.gitlab_runner
rol de gitlab-runner
Resumen
Este rol de Ansible tiene las siguientes características:
- Instalar gitlab-runner
Requisitos
- Versión de Ansible para la instalación: 2.8
- Sistemas Operativos Soportados:
- EL (RedHat, CentOS)
- 7, 8
- Amazon2 Linux
- Ubuntu
- 16.04
- 18.04
- Debian
- 8, 9
- EL (RedHat, CentOS)
Variables del Rol
- requeridas
gitlab_version
Versión específica de Gitlab-Runner. El valor por defecto eslatest
.gitlab_api_token
Un token que necesitas para acceder a la API de Gitlab. El valor por defecto es''
.gitlab_ci_token
Un token que obtuviste para registrar el Runner. El valor por defecto es''
.gitlab_runner_description
El nombre único del runner. Valor por defecto:
{{ ansible_fqdn }}
{{ ansible_distribution }}
{{ ansible_distribution_major_version }}
por defecto
no_logs
Ocultar información sensible de los registros. El valor por defecto estrue
.gitlab_runner_skip_registration
Omitir el registro del gitlab-runner después de la instalación. El valor por defecto esfalse
.gitlab_host
Servidor gitlab de Docker. El valor por defecto esgitlab.com
.gitlab_url
Dirección URL de Gitlab. Valor por defecto:https://{{ gitlab_host }}/
.gitlab_runner_tags
Las etiquetas asociadas con el Runner. Deben estar separadas por comas. El valor por defecto esdelegated
.gitlab_runner_access_level: not_protected
Determina si un runner puede aceptar trabajos de ramas protegidas. Valores disponibles:ref_protected
not_protected
. El valor por defecto esnot_protected
.gitlab_runner_untagged_builds_run
Configuración que impide recoger trabajos no etiquetados. El valor por defecto esfalse
.gitlab_runner_lock_to_project
Configuración que bloquea el Runner al proyecto actual. El valor por defecto esfalse
.gitlab_runner_executor
Ejecutor del Runner. El valor por defecto esshell
.gitlab_runner_extra_options
Opción extra para el proceso de registro del runner. El valor por defecto esundefined
.gitlab_runner_limit
Configuración que limita cuántos trabajos pueden manejarse simultáneamente con este token.0
simplemente significa no limitar. El valor por defecto es1
.gitlab_runner_concurrent
Limita cuántos trabajos se pueden ejecutar simultáneamente a nivel global. El límite superior de trabajos utilizando todos los runners definidos.0
no significa ilimitado. El valor por defecto esansible_processor_vcpus
.gitlab_runner_request_concurrency
Limita el número de solicitudes concurrentes para nuevos trabajos desde GitLab. El valor por defecto es1
.gitlab_runner_env_vars
Agregar o sobrescribir variables de entorno. El valor por defecto es["ENV=value", "LC_ALL=en_US.UTF-8"]
.gitlab_runner_package
Nombre del paquete gitlab-runner. Valor por defecto:gitlab-runner
.gitlab_runner_packages_additional
Instalar paquetes adicionales para todas las instalaciones. El valor por defecto es[]
.gitlab_runner_gpg
Clave GPG para Debian. El valor por defecto eshttps://packages.gitlab.com/gpg.key
.gitlab_global_section
Sección global de la configuración de gitlab. Valor por defecto es un diccionario:
concurrent: '{{ gitlab_runner_request_concurrency }}' check_interval: 0
gitlab_session_server_section
Sección del servidor en la configuración de gitlab. Valor por defecto es un diccionario:session_timeout: 1800
.gitlab_runners_section
Sección de los runners en la configuración de gitlab. Valor por defecto es un diccionario:
name: '{{ gitlab_runner_description }}' url: '{{ gitlab_url }}' token: '{{ gitlab_runner.runner.token | default(omit) }}' executor: '{{ gitlab_runner_executor }}' environment: '{{ gitlab_runner_env_vars }}'
configuración avanzada
gitlab_runner_config
Diccionario utilizado para configuraciones avanzadas:params
Variables de entorno utilizadas durante el proceso de registro.global_values
Diccionario con clave:valor utilizado para agregar/cambiar valores no string en el archivo "config.toml".global_strings
Diccionario con clave:valor utilizado para agregar/cambiar valores string en el archivo "config.toml".
variables adicionales
yum_libselinux_python_library
Nombre de la biblioteca python de Selinux. El valor por defecto es:libselinux-python
. Para RedHat 8 o Fedora el nombre de la biblioteca puede ser diferente, por ejemplo,python3-libselinux
.yum_libselinux_config_libraries
Bibliotecas de configuración de Selinux. El valor por defecto es una lista:[policycoreutils-python, libsemanage-python]
. Para RedHat 8 o Fedora el valor puede ser diferente:- python3-policycoreutils
- python3-libsemanage
epel_repository_url
URL del paquete del repositorio EPEL. Valor por defecto:https://dl.fedoraproject.org/pub/epel/epel-release-latest-{{ ansible_distribution_major_version }}.noarch.rpm
.epel_rpm_key
Clave rpm de EPEL. El valor por defecto es/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-{{ ansible_distribution_major_version }}
.gitlab_runner_python_module_version
Versión de la biblioteca python-gitlab. Valor por defecto:'1.12.1'
.pip_executable
Nombre del binario ejecutable pip. Valor por defecto:pip
para objetivos basados en RedHat.pip3
para objetivos basados en Debian.
python_executable
Nombre del ejecutable de python. Valor por defecto:python
para objetivos basados en RedHat.python3
para objetivos basados en Debian.
Algunos ejemplos de cómo instalar el rol actual
Con playlabs puedes instalar este rol con solo un comando, es decir:
playlabs install lean_delivery.gitlab_runner @localhost gitlab_ci_token=tucomando gitlab_host=tuurl.com gitlab_runner_limit=4 gitlab_version=11.6
O, sin playlabs, instala con galaxy para que puedas usarlo con tu playbook:
ansible-galaxy install lean_delivery.gitlab_runner
Ejemplo de Playbook
Instalando gitlab-runner sin registro:
- name: Converger
hosts: gitlab_runner
roles:
- role: lean_delivery.gitlab_runner
vars:
gitlab_runner_concurrent: 1
gitlab_runner_skip_registration: true
Instalando gitlab-runner con registro y configuración:
- name: Converger
hosts: gitlab_runner
roles:
- role: lean_delivery.gitlab_runner
gitlab_runner_concurrent: 4
gitlab_runner_skip_registration: false
gitlab_api_token: >-
{{ lookup('env', 'GITLAB_API_TOKEN') }}
gitlab_ci_token: >-
{{ lookup('env', 'GITLAB_REGISTRATION_TOKEN') }}
gitlab_runner_description: 'Mi Gran Runner'
gitlab_runner_tags:
- deploy_test
- shell
gitlab_runner_untagged_builds_run: false
gitlab_runner_concurrent: 1
gitlab_version: '12.5.1'
gitlab_runner_skip_registration: false
Licencia
Apache
Información del Autor
autores:
- Lean Delivery Team team@lean-delivery.com
Acerca del proyecto
Lean Delivery Gitlab Runner install
Instalar
ansible-galaxy install lean_delivery.gitlab_runner
Licencia
apache-2.0
Descargas
43.2k
Propietario
Simplify by using!