mircomasa.jenkins_slave

rol de jenkins-slave

Licencia estado de la pipeline estado de la pipeline Galaxy Ansible Ansible

Este rol configura un nuevo nodo esclavo de Jenkins y lo añade al maestro de Jenkins.

Requisitos


  • Versión de Ansible para la instalación: >=2.8
  • Sistemas operativos soportados
    • EL
      • 7
      • 8
    • Amazon Linux 2
    • Ubuntu
      • xenial
      • bionic
    • Debian
      • stretch
    • Windows
      • 2016
      • 2019

Dependencias


Java 8 Estado de construcción

Variables del rol


  • obligatorias

    • master_username Nombre de usuario CLI del maestro de Jenkins. El valor predeterminado es admin.
    • master_password Contraseña de usuario CLI del maestro de Jenkins. El valor predeterminado es admin.
    • master_host Nombre FQDN o dirección IP del host maestro de Jenkins. El valor predeterminado es {{ ansible_host }}.
    • master_port Puerto HTTP del maestro de Jenkins. El valor predeterminado es 8080.
  • valores predeterminados generales

    • slave_agent_name Nombre del agente del nodo esclavo. El valor predeterminado es agent.
    • slave_executors_num Número de ejecutores del nodo esclavo. El valor predeterminado es 1.
    • slave_environments Diccionario de variables de entorno que se establecerán en el esclavo. El valor predeterminado es {}
    • slave_mode_exclusive Establecer uso de este nodo. Si es verdadero, el nodo solo construirá trabajos con expresiones de etiqueta coincidentes. El valor predeterminado es false.
    • master_url URL del host maestro de Jenkins. El valor predeterminado es http://{{ master_host }}:{{ master_port }}.
  • valores predeterminados para Linux

    • slave_linux_jenkins_cred_id ID de credenciales ya existente en el maestro de Jenkins: El valor predeterminado es ci_slave.
    • slave_linux_jenkins_username Nombre de usuario definido en slave_linux_jenkins_cred_id. Un nuevo usuario con este nombre se creará en el nodo esclavo. El valor predeterminado es user.
    • slave_linux_jenkins_password Contraseña para un nuevo usuario en el nodo esclavo. Debe coincidir con la contraseña de las credenciales si su tipo es 'Nombre de usuario con contraseña'. El valor predeterminado es 'password'.
    • slave_linux_jenkins_public_key Clave pública que se añadirá al archivo authorized_keys del usuario esclavo. La clave privada se coloca en las credenciales del maestro de Jenkins si su tipo es 'Nombre de usuario SSH con clave privada'. El valor predeterminado es "".
    • slave_linux_home Ruta de inicio para desplegar los binarios del esclavo de Jenkins. El valor predeterminado es /opt/jenkins.
    • slave_linux_user_group Grupo para un nuevo usuario en el nodo esclavo. El valor predeterminado es user.
    • slave_linux_host Host donde se instala el esclavo de Jenkins. El valor predeterminado es "{{ ansible_host }}".
    • slave_linux_ssh_port Puerto SSH del nodo esclavo. El valor predeterminado es 22.
    • slave_linux_selinux_ports Puertos de Selinux del nodo esclavo. El valor predeterminado es "{{ master_port }},49187,{{ slave_linux_ssh_port }}".
    • slave_linux_labels Lista de etiquetas para el nodo esclavo. El valor predeterminado es ['linux'].
  • valores predeterminados para Windows

    • slave_windows_workdir Ruta de inicio para desplegar los binarios del esclavo de Jenkins. El valor predeterminado es C:/Jenkins_Slave.
    • slave_windows_service Nombre del servicio de Windows. El valor predeterminado es jenkins-slave.
    • slave_windows_java_opts Opciones adicionales para pasar a java. El valor predeterminado es "".
    • slave_windows_labels Lista de etiquetas para el nodo esclavo. El valor predeterminado es ['windows'].
    • slave_windows_service_user El nombre de usuario para configurar el servicio para que se inicie como.
    • slave_windows_service_password La contraseña del nombre de usuario dado para configurar el servicio para que se inicie como.

Ejemplo de Playbook

- name: "Instalar jenkins-slave en hosts remotos usando credenciales predeterminadas 'Nombre de usuario con contraseña'"
  hosts: slave

  vars:
    master_host: master.example.com

  roles:
    - role: lean_delivery.jenkins_slave
- name: "Instalar jenkins-slave en hosts remotos usando credenciales 'Nombre de usuario con contraseña' creadas"
  hosts: one_slave

  vars:
    master_host: master.example.com
    slave_linux_jenkins_cred_id: new_cred
    slave_linux_jenkins_username: new_user
    slave_linux_jenkins_password: new_password
    slave_agent_name: new_linux_slave

  roles:
    - role: lean_delivery.jenkins_slave
- name: "Instalar jenkins-slave en hosts remotos usando credenciales 'Nombre de usuario SSH con clave privada' creadas"
  hosts: many_slaves

  vars:
    master_host: master.example.com
    slave_linux_jenkins_cred_id: new_cred
    slave_linux_jenkins_username: new_user
    slave_linux_jenkins_public_key:
Nck6x4HPrsdfkjhwhf98239hfoijhpowifnYXRXAW1GYGC3lsq7FpWjCeN8wT5QzRsblTh6HZKqh96K3Jj6kpob8ykjhsdkfjhskdfuhksdjfhksjdfhksfjhhkjhUHKUHDKFksjdfhkjshdfXPlx2xSUINDsH2IACLjIrxSAppxITzR7fHZyLmkjsdhfkuwhe98237982fhksdfhksdfhkuhCmcvH6fdVtozo42lXt4QgKytGtiuGAT+lN+uJ4LVGOq32WiEbYKbc7WE7N

  roles:
    - role: lean_delivery.jenkins_slave

Ejemplo de Inventario

[master]
master.example.com

[one_slave]
slave.example.com

[many_slaves]
slave1.example.com slave_agent_name=slave1
slave2.example.com slave_agent_name=slave2

Licencia


Apache Licencia

Información del Autor


autores:

Acerca del proyecto

Ansible Role - Jenkins Slaves installation and configuration

Instalar
ansible-galaxy install mircomasa.jenkins_slave
Licencia
apache-2.0
Descargas
3.5k
Propietario