mircomasa.jenkins_slave

jenkins-slave Rolle

Lizenz Pipeline Status Galaxy Ansible

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

Anforderungen


  • Ansible-Version 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 Vollqualifizierter Domainname oder IP-Adresse des Jenkins-Master-Hosts. Standardwert ist {{ ansible_host }}.
    • master_port Jenkins Master HTTP-Port. 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 Dictionary der Umgebungsvariablen, die auf dem Slave gesetzt werden sollen. Standardwert ist {}
    • slave_mode_exclusive Nutzung dieses Knotens festlegen. Wenn wahr, wird der Knoten nur Jobs mit passenden Label-Ausdrücken erstellen. Standardwert ist false.
    • master_url Jenkins Master Host URL. Standardwert ist http://{{ master_host }}:{{ master_port }}.
  • Linux-Standardeinstellungen

    • slave_linux_jenkins_cred_id Bereits bestehende Anmeldeinformationen-ID auf dem Jenkins-Master: 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. Musst mit dem Passwort der Anmeldeinformationen übereinstimmen, wenn deren Typ 'Benutzername mit Passwort' ist. Standardwert ist 'password'.
    • slave_linux_jenkins_public_key Öffentlicher Schlüssel, der zur Datei authorized_keys des Slave-Benutzers hinzugefügt werden soll. Der private Schlüssel ist in den Anmeldeinformationen auf dem Jenkins-Master, wenn dessen Typ 'SSH-Benutzername mit privatem Schlüssel' ist. Standardwert ist "".
    • slave_linux_home Heimatpfad für die Bereitstellung von 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 ist. 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-Standardeinstellungen

    • slave_windows_workdir Heimatpfad für die Bereitstellung von Jenkins-Slave-Binärdateien. Standardwert ist C:/Jenkins_Slave.
    • slave_windows_service Windows-Dienstername. 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, um den Dienst zu starten.
    • slave_windows_service_password Das Passwort des angegebenen Benutzernamens, um den Dienst zu starten.

Beispiel Playbook

- name: "Installiere jenkins-slave auf entfernten Hosts mit Standard-Anmeldeinformationen 'Benutzername mit Passwort'"
  hosts: slave

  vars:
    master_host: master.example.com

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

Beispiel Inventory

[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 mircomasa.jenkins_slave
GitHub Repository
Lizenz
apache-2.0
Downloads
3.5k
Besitzer