meierw.jenkins_job_dsl_exec

jenkins_job_dsl_exec

Build Status

Ansible-Rolle, die ein temporäres Jenkins-Job erstellt, ausführt und anschließend löscht, das ein Job DSL-Skript enthält.

Anforderungen

  • Ein Jenkins-Dienst mit installiertem Job DSL-Plugin.
  • Die Fähigkeit, jenkins_script gegen den genannten Jenkins-Dienst auszuführen.

Rollenvariablen

jenkins_job_dsl_url: http://localhost:8080
jenkins_job_dsl_user: admin
jenkins_job_dsl_password: admin

Die URL, der Benutzername und das Passwort zur Authentifizierung bei Jenkins. Diese werden verwendet, um jenkins_script auszuführen.


jenkins_job_dsl_temp_job_name: C4lpe7GMX8S0pdZV6RWbKAkBfKWCPAOgAL9MGL03

Der Name des temporären Jobs, der für die Ausführung des DSL-Skripts verwendet wird. Sollte als komplizierte Zeichenfolge beibehalten werden, um Kollisionen mit tatsächlichen Jobnamen zu vermeiden.


jenkins_job_dsl_content: |
    job('dsl-example-job') {
        steps {
            shell('echo Hello world!')
        }
    }

Das DSL-Skript, das ausgeführt wird. Du kannst es inline angeben wie im Beispiel, oder etwas wie jenkins_job_dsl_content: "{{ lookup('file', 'files/myDslScript.groovy') }}" verwenden, wenn du dein Playbook ordentlicher gestalten möchtest.


jenkins_job_dsl_temp_job_run: true

Soll der neu erstellte temporäre Job ausgeführt werden? Du möchtest dies möglicherweise deaktivieren, wenn du einen anderen Plan hast, wann oder wie du ihn ausführen möchtest.


jenkins_job_dsl_temp_job_delete: true

Soll der temporäre Job nach der Ausführung gelöscht werden? Du möchtest dies möglicherweise deaktivieren, wenn du nicht das gewünschte Ergebnis bekommst und das Build-Protokoll in Jenkins überprüfen möchtest. Führt nichts aus, wenn jenkins_job_dsl_temp_job_run auf false ist.


jenkins_job_dsl_temp_job_running_checks: 10

Wie oft soll die Rolle überprüfen, ob der Job beendet ist, bevor er gelöscht wird? Die Rolle führt jede Sekunde eine Überprüfung durch, daher ist diese Anzahl auch das Zeitlimit für die Überprüfung in Sekunden. Führt nichts aus, wenn jenkins_job_dsl_temp_job_delete auf false ist.

Beispiel-Playbook

- hosts: servers
  roles:
    - { role: meierw.jenkins_job_dsl_exec }

Lizenz

MIT

Autoreninformation

Über das Projekt

Creates, executes and then deletes a temporary Jenkins job containing a Job DSL script.

Installieren
ansible-galaxy install meierw.jenkins_job_dsl_exec
GitHub Repository
Lizenz
mit
Downloads
149
Besitzer