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_usernameNom d'utilisateur CLI du master Jenkins. Valeur par défaut :admin.master_passwordMot de passe de l'utilisateur CLI du master Jenkins. Valeur par défaut :admin.master_hostNom FQDN ou adresse IP de l'hôte master Jenkins. Valeur par défaut :{{ ansible_host }}.master_portPort HTTP du master Jenkins. Valeur par défaut :8080.
paramètres par défaut
slave_agent_nameNom de l'agent du nœud slave. Valeur par défaut :agent.slave_executors_numNombre d'exécuteurs sur le nœud slave. Valeur par défaut :1.slave_environmentsDictionnaire des variables d'environnement à définir sur le slave. Valeur par défaut :{}slave_mode_exclusiveUtilisation 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_urlURL 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_idIdentifiant des identifiants déjà existants sur le master Jenkins. Valeur par défaut :ci_slave.slave_linux_jenkins_usernameNom 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_passwordMot 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_keyClé 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_homeChemin d'accueil pour le déploiement des binaires du slave Jenkins. Valeur par défaut :/opt/jenkins.slave_linux_user_groupGroupe pour un nouvel utilisateur sur le nœud slave. Valeur par défaut :user.slave_linux_hostHôte où le slave Jenkins est installé. Valeur par défaut :"{{ ansible_host }}".slave_linux_ssh_portPort SSH du nœud slave. Valeur par défaut :22.slave_linux_selinux_portsPorts Selinux du nœud slave. Valeur par défaut :"{{ master_port }},49187,{{ slave_linux_ssh_port }}".slave_linux_labelsListe des étiquettes pour le nœud slave. Valeur par défaut :['linux'].
paramètres par défaut pour Windows
slave_windows_workdirChemin d'accueil pour le déploiement des binaires du slave Jenkins. Valeur par défaut :C:/Jenkins_Slave.slave_windows_serviceNom du service Windows. Valeur par défaut :jenkins-slave.slave_windows_java_optsOptions supplémentaires à passées à Java. Valeur par défaut :"".slave_windows_labelsListe des étiquettes pour le nœud slave. Valeur par défaut :['windows'].slave_windows_service_userNom d'utilisateur sous lequel le service doit démarrer.slave_windows_service_passwordMot 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_slaveLicence
apache-2.0
Téléchargements
17.6k
Propriétaire
Simplify by using!
