lean_delivery.jenkins_slave

jenkins-slave Rolle

Lizenz Pipelinesstatus

Diese Rolle richtet einen neuen Jenkins-Slave-Knoten ein und fügt ihn dem Jenkins-Master hinzu.

Anforderungen


  • Version von Ansible für die Installation: >=2.8
  • Unterstützte Betriebssysteme
    • EL
      • 7
      • 8
    • Amazon Linux 2
    • Ubuntu
      • xenial
      • bionic
    • Debian
      • stretch
    • Windows
      • 2016
      • 2019

Abhängigkeiten


Java 8 Build-Status

Rollenvariablen


  • erforderlich

    • master_username Jenkins-Master-CLI-Benutzername. Standardwert ist admin.
    • master_password Jenkins-Master-CLI-Benutzerpasswort. Standardwert ist admin.
    • master_host FQDN-Name oder IP-Adresse des Jenkins-Master-Hosts. Standardwert ist {{ ansible_host }}.
    • master_port HTTP-Port des Jenkins-Masters. Standardwert ist 8080.
  • allgemeine Standardwerte

    • slave_agent_name Agentenname des Slave-Knotens. Standardwert ist agent.
    • slave_executors_num Anzahl der Executor des Slave-Knotens. Standardwert ist 1.
    • slave_environments Wörterbuch von Umgebungsvariablen, die auf dem Slave gesetzt werden. Standardwert ist {}
    • slave_mode_exclusive Nutzung dieses Knotens festlegen. Wenn true, wird der Knoten nur Jobs mit übereinstimmenden Label-Ausdrücken bauen. Standardwert ist false.
    • master_url Jenkins-Master-Host-URL. Standardwert ist http://{{ master_host }}:{{ master_port }}.
  • Linux-Standardwerte

    • slave_linux_jenkins_cred_id Berechtigungs-ID, die bereits auf dem Jenkins-Master existiert: Standardwert ist ci_slave.
    • slave_linux_jenkins_username Benutzername, der in slave_linux_jenkins_cred_id definiert ist. Ein neuer Benutzer mit diesem Namen wird auf dem Slave-Knoten erstellt. Standardwert ist user.
    • slave_linux_jenkins_password Passwort für einen neuen Benutzer auf dem Slave-Knoten. Muss mit dem Passwort der Berechtigungen übereinstimmen, wenn dessen Typ 'Benutzername mit Passwort' ist. Standardwert ist 'password'.
    • slave_linux_jenkins_public_key Öffentliches Schlüssel, der zur Datei authorized_keys des Slave-Benutzers hinzugefügt werden soll. Der private Schlüssel befindet sich in den Berechtigungen auf dem Jenkins-Master, wenn dessen Typ 'SSH-Benutzername mit privatem Schlüssel' ist. Standardwert ist "".
    • slave_linux_home Home-Pfad für die Bereitstellung der Jenkins-Slave-Binärdateien. Standardwert ist /opt/jenkins.
    • slave_linux_user_group Gruppe für einen neuen Benutzer auf dem Slave-Knoten. Standardwert ist user.
    • slave_linux_host Host, auf dem der Jenkins-Slave installiert wird. Standardwert ist "{{ ansible_host }}".
    • slave_linux_ssh_port SSH-Port des Slave-Knotens. Standardwert ist 22.
    • slave_linux_selinux_ports Selinux-Ports des Slave-Knotens. Standardwert ist "{{ master_port }},49187,{{ slave_linux_ssh_port }}".
    • slave_linux_labels Liste von Labels für den Slave-Knoten. Standardwert ist ['linux'].
  • Windows-Standardwerte

    • slave_windows_workdir Home-Pfad für die Bereitstellung der Jenkins-Slave-Binärdateien. Standardwert ist C:/Jenkins_Slave.
    • slave_windows_service Name des Windows-Dienstes. Standardwert ist jenkins-slave.
    • slave_windows_java_opts Zusätzliche Optionen für Java. Standardwert ist "".
    • slave_windows_labels Liste von Labels für den Slave-Knoten. Standardwert ist ['windows'].
    • slave_windows_service_user Der Benutzername, unter dem der Dienst gestartet werden soll.
    • slave_windows_service_password Das Passwort des angegebenen Benutzernamens, unter dem der Dienst gestartet werden soll.

Beispiel-Playbook

- name: "Installiere jenkins-slave auf Remote-Hosts mit den Standard 'Benutzername mit Passwort' Berechtigungen"
  hosts: slave

  vars:
    master_host: master.example.com

  roles:
    - role: lean_delivery.jenkins_slave
- name: "Installiere jenkins-slave auf Remote-Hosts mit erstellten 'Benutzername mit Passwort' Berechtigungen"
  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: "Installiere jenkins-slave auf Remote-Hosts mit erstellten 'SSH-Benutzername mit privatem Schlüssel' Berechtigungen"
  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

Beispielinventar

[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

Lizenz


Apache Lizenz

Autor-Informationen


autoren:

Über das Projekt

Ansible Role - Jenkins Slaves installation and configuration

Installieren
ansible-galaxy install lean_delivery.jenkins_slave
Lizenz
apache-2.0
Downloads
14.8k
Besitzer
Simplify by using!