mircomasa.jenkins_slave
rol de jenkins-slave
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
- EL
Dependencias
Variables del rol
obligatorias
master_username
Nombre de usuario CLI del maestro de Jenkins. El valor predeterminado esadmin
.master_password
Contraseña de usuario CLI del maestro de Jenkins. El valor predeterminado esadmin
.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 es8080
.
valores predeterminados generales
slave_agent_name
Nombre del agente del nodo esclavo. El valor predeterminado esagent
.slave_executors_num
Número de ejecutores del nodo esclavo. El valor predeterminado es1
.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 esfalse
.master_url
URL del host maestro de Jenkins. El valor predeterminado eshttp://{{ 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 esci_slave
.slave_linux_jenkins_username
Nombre de usuario definido enslave_linux_jenkins_cred_id
. Un nuevo usuario con este nombre se creará en el nodo esclavo. El valor predeterminado esuser
.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 esuser
.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 es22
.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 esC:/Jenkins_Slave
.slave_windows_service
Nombre del servicio de Windows. El valor predeterminado esjenkins-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
Información del Autor
autores:
- Lean Delivery Team team@lean-delivery.com
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