mircomasa.jenkins_slave
rôle jenkins-slave
Ce rôle configure un nouveau nœud esclave jenkins et l'ajoute au maître 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 de la CLI du maître Jenkins. La valeur par défaut estadmin
.master_password
Mot de passe de la CLI du maître Jenkins. La valeur par défaut estadmin
.master_host
Nom FQDN ou adresse IP de l'hôte maître Jenkins. La valeur par défaut est{{ ansible_host }}
.master_port
Port http du maître Jenkins. La valeur par défaut est8080
.
valeurs par défaut générales
slave_agent_name
Nom de l'agent du nœud esclave. La valeur par défaut estagent
.slave_executors_num
Nombre d'exécuteurs du nœud esclave. La valeur par défaut est1
.slave_environments
Dictionnaire des variables d'environnement à définir sur l'esclave. La valeur par défaut est{}
slave_mode_exclusive
Définit l'utilisation de ce nœud. Si vrai, le nœud ne construira que des travaux avec des expressions d'étiquettes correspondantes. La valeur par défaut estfalse
.master_url
URL de l'hôte maître Jenkins. La valeur par défaut esthttp://{{ master_host }}:{{ master_port }}
.
valeurs par défaut pour Linux
slave_linux_jenkins_cred_id
Identifiant des informations d'identification existantes sur le maître Jenkins : La valeur par défaut estci_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 esclave. La valeur par défaut estuser
.slave_linux_jenkins_password
Mot de passe pour un nouvel utilisateur sur le nœud esclave. Doit correspondre au mot de passe des informations d'identification s'il s'agit d'un type 'Nom d'utilisateur avec mot de passe'. La valeur par défaut est 'password'.slave_linux_jenkins_public_key
Clé publique à ajouter au fichier authorized_keys de l'utilisateur esclave. La clé privée est placée dans les informations d'identification sur le maître Jenkins si son type est 'Nom d'utilisateur SSH avec clé privée'. La valeur par défaut est""
.slave_linux_home
Chemin d'accueil pour déployer les binaires de l'esclave Jenkins. La valeur par défaut est/opt/jenkins
.slave_linux_user_group
Groupe pour un nouvel utilisateur sur le nœud esclave. La valeur par défaut estuser
.slave_linux_host
Hôte où l'esclave Jenkins est installé. La valeur par défaut est"{{ ansible_host }}"
.slave_linux_ssh_port
Port SSH du nœud esclave. La valeur par défaut est22
.slave_linux_selinux_ports
Ports Selinux du nœud esclave. La valeur par défaut est"{{ master_port }},49187,{{ slave_linux_ssh_port }}"
.slave_linux_labels
Liste des étiquettes pour le nœud esclave. La valeur par défaut est['linux']
.
valeurs par défaut pour Windows
slave_windows_workdir
Chemin d'accueil pour déployer les binaires de l'esclave Jenkins. La valeur par défaut estC:/Jenkins_Slave
.slave_windows_service
Nom du service Windows. La valeur par défaut estjenkins-slave
.slave_windows_java_opts
Options supplémentaires à passer à Java. La valeur par défaut est""
.slave_windows_labels
Liste des étiquettes pour le nœud esclave. La valeur par défaut est['windows']
.slave_windows_service_user
Le nom d'utilisateur sous lequel le service doit démarrer.slave_windows_service_password
Le 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 informations d'identification 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 des informations d'identification créées '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 des informations d'identification créées '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 mircomasa.jenkins_slave
Licence
apache-2.0
Téléchargements
3.5k
Propriétaire