lean_delivery.jenkins_slave
rol de jenkins-slave
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
- EL
Dependencias
Variables del Rol
requeridas
master_username
Nombre de usuario del CLI del maestro de Jenkins. El valor por defecto esadmin
.master_password
Contraseña del usuario CLI del maestro de Jenkins. El valor por defecto esadmin
.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 es8080
.
valores por defecto generales
slave_agent_name
Nombre del agente del nodo esclavo. El valor por defecto esagent
.slave_executors_num
Número de ejecutores del nodo esclavo. El valor por defecto es1
.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 esfalse
.master_url
URL del host maestro de Jenkins. El valor por defecto eshttp://{{ 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 esci_slave
.slave_linux_jenkins_username
Nombre de usuario que se define enslave_linux_jenkins_cred_id
. Se creará un nuevo usuario con este nombre en el nodo esclavo. El valor por defecto 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 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 esuser
.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 es22
.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 esC:/Jenkins_Slave
.slave_windows_service
Nombre del servicio de Windows. El valor por defecto esjenkins-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
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 lean_delivery.jenkins_slave
Licencia
apache-2.0
Descargas
14.8k
Propietario
Simplify by using!