lean_delivery.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 agrega 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


  • requeridas

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

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

    • slave_linux_jenkins_cred_id ID de credenciales que ya existe en el maestro de Jenkins: El valor por defecto es ci_slave.
    • slave_linux_jenkins_username Nombre de usuario que se define en slave_linux_jenkins_cred_id. Se creará un nuevo usuario con este nombre en el nodo esclavo. El valor por defecto 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 por defecto 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 por defecto es "".
    • slave_linux_home Ruta de inicio para implementar los binarios del esclavo de Jenkins. El valor por defecto es /opt/jenkins.
    • slave_linux_user_group Grupo para un nuevo usuario en el nodo esclavo. El valor por defecto es user.
    • slave_linux_host Host donde se instala el esclavo de Jenkins. El valor por defecto es "{{ ansible_host }}".
    • slave_linux_ssh_port Puerto SSH del nodo esclavo. El valor por defecto es 22.
    • slave_linux_selinux_ports Puertos de Selinux del nodo esclavo. El valor por defecto es "{{ master_port }},49187,{{ slave_linux_ssh_port }}".
    • slave_linux_labels Lista de etiquetas para el nodo esclavo. El valor por defecto es ['linux'].
  • valores por defecto para Windows

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

Ejemplo de Playbook

- name: "Instalar jenkins-slave en hosts remotos utilizando 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 utilizando 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 utilizando 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 lean_delivery.jenkins_slave
Licencia
apache-2.0
Descargas
14.8k
Propietario
Simplify by using!