lean_delivery.jenkins_slave
Rôle Jenkins-Slave
Ce rôle configure un nouveau nœud slave Jenkins et l'ajoute au master Jenkins.
Exigences
- Version d'Ansible pour l'installation : >=2.8
- Systèmes d'exploitation supportés
- EL
- 7
- 8
- Amazon Linux 2
- Ubuntu
- xenial
- bionic
- Debian
- stretch
- Windows
- 2016
- 2019
- EL
Dépendances
Variables du rôle
requis
master_username
Nom d'utilisateur CLI du master Jenkins. Valeur par défaut :admin
.master_password
Mot de passe de l'utilisateur CLI du master Jenkins. Valeur par défaut :admin
.master_host
Nom FQDN ou adresse IP de l'hôte master Jenkins. Valeur par défaut :{{ ansible_host }}
.master_port
Port HTTP du master Jenkins. Valeur par défaut :8080
.
paramètres par défaut
slave_agent_name
Nom de l'agent du nœud slave. Valeur par défaut :agent
.slave_executors_num
Nombre d'exécuteurs sur le nœud slave. Valeur par défaut :1
.slave_environments
Dictionnaire des variables d'environnement à définir sur le slave. Valeur par défaut :{}
slave_mode_exclusive
Utilisation de ce nœud. Si vrai, le nœud ne construira que des tâches avec des expressions d'étiquette correspondantes. Valeur par défaut :false
.master_url
URL de l'hôte master Jenkins. Valeur par défaut :http://{{ master_host }}:{{ master_port }}
.
paramètres par défaut pour Linux
slave_linux_jenkins_cred_id
Identifiant des identifiants déjà existants sur le master Jenkins. Valeur par défaut :ci_slave
.slave_linux_jenkins_username
Nom d'utilisateur défini dansslave_linux_jenkins_cred_id
. Un nouvel utilisateur avec ce nom sera créé sur le nœud slave. Valeur par défaut :user
.slave_linux_jenkins_password
Mot de passe pour un nouvel utilisateur sur le nœud slave. Doit correspondre au mot de passe des identifiants si son type est 'Nom d'utilisateur avec mot de passe'. Valeur par défaut : 'password'.slave_linux_jenkins_public_key
Clé publique à ajouter au fichier authorized_keys de l'utilisateur slave. La clé privée est placée dans les identifiants sur le master Jenkins si son type est 'Nom d'utilisateur SSH avec clé privée'. Valeur par défaut :""
.slave_linux_home
Chemin d'accueil pour le déploiement des binaires du slave Jenkins. Valeur par défaut :/opt/jenkins
.slave_linux_user_group
Groupe pour un nouvel utilisateur sur le nœud slave. Valeur par défaut :user
.slave_linux_host
Hôte où le slave Jenkins est installé. Valeur par défaut :"{{ ansible_host }}"
.slave_linux_ssh_port
Port SSH du nœud slave. Valeur par défaut :22
.slave_linux_selinux_ports
Ports Selinux du nœud slave. Valeur par défaut :"{{ master_port }},49187,{{ slave_linux_ssh_port }}"
.slave_linux_labels
Liste des étiquettes pour le nœud slave. Valeur par défaut :['linux']
.
paramètres par défaut pour Windows
slave_windows_workdir
Chemin d'accueil pour le déploiement des binaires du slave Jenkins. Valeur par défaut :C:/Jenkins_Slave
.slave_windows_service
Nom du service Windows. Valeur par défaut :jenkins-slave
.slave_windows_java_opts
Options supplémentaires à passées à Java. Valeur par défaut :""
.slave_windows_labels
Liste des étiquettes pour le nœud slave. Valeur par défaut :['windows']
.slave_windows_service_user
Nom d'utilisateur sous lequel le service doit démarrer.slave_windows_service_password
Mot de passe du nom d'utilisateur donné pour démarrer le service.
Exemple de Playbook
- name: "Installer jenkins-slave sur des hôtes distants en utilisant les identifiants par défaut 'Nom d'utilisateur avec mot de passe'"
hosts: slave
vars:
master_host: master.example.com
roles:
- role: lean_delivery.jenkins_slave
- name: "Installer jenkins-slave sur des hôtes distants en utilisant les identifiants créés 'Nom d'utilisateur avec mot de passe'"
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: "Installer jenkins-slave sur des hôtes distants en utilisant les identifiants créés 'Nom d'utilisateur SSH avec clé privée'"
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
Exemple d'Inventaire
[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
Licence
Informations sur l'auteur
auteurs:
- Équipe Lean Delivery team@lean-delivery.com
À propos du projet
Ansible Role - Jenkins Slaves installation and configuration
Installer
ansible-galaxy install lean_delivery.jenkins_slave
Licence
apache-2.0
Téléchargements
14.8k
Propriétaire
Simplify by using!