meierw.jenkins_job_dsl_exec
jenkins_job_dsl_exec
Rola Ansible, która tworzy, wykonuje, a następnie usuwa tymczasową pracę Jenkins zawierającą skrypt Job DSL.
Wymagania
- Serwis Jenkins z zainstalowanym wtyczką
Job DSL
. - Możliwość wykonania jenkins_script na tym serwisie Jenkins.
Zmienne roli
jenkins_job_dsl_url: http://localhost:8080
jenkins_job_dsl_user: admin
jenkins_job_dsl_password: admin
URL, nazwa użytkownika i hasło do autoryzacji w Jenkins. Będą używane do wykonania jenkins_script
.
jenkins_job_dsl_temp_job_name: C4lpe7GMX8S0pdZV6RWbKAkBfKWCPAOgAL9MGL03
Nazwa tymczasowej pracy, która będzie używana do wykonania skryptu DSL. Powinno to być skomplikowane ciąg znaków, aby uniknąć kolizji z rzeczywistymi nazwami prac.
jenkins_job_dsl_content: |
job('dsl-example-job') {
steps {
shell('echo Witaj świecie!')
}
}
Skrypt DSL, który będzie wykonany. Możesz określić go bezpośrednio, jak w przykładzie,
lub użyć czegoś takiego jak jenkins_job_dsl_content: "{{ lookup('file', 'files/myDslScript.groovy') }}"
, jeśli chcesz, aby twój playbook był bardziej przejrzysty.
jenkins_job_dsl_temp_job_run: true
Czy nowo utworzona tymczasowa praca ma być uruchomiona. Możesz to wyłączyć, jeśli masz inny plan na to, kiedy lub jak chcesz ją uruchomić.
jenkins_job_dsl_temp_job_delete: true
Czy tymczasowa praca ma być usunięta po jej uruchomieniu.
Możesz to wyłączyć, jeśli nie uzyskujesz oczekiwanych wyników i chcesz sprawdzić dziennik budowy w Jenkins.
Nie ma to znaczenia, jeśli jenkins_job_dsl_temp_job_run
jest false.
jenkins_job_dsl_temp_job_running_checks: 10
Ile razy rola powinna sprawdzić, czy praca przestała działać przed jej usunięciem.
Rola dokonuje sprawdzenia co sekundę, więc ta liczba jest również limitem czasu sprawdzenia w sekundach.
Nie ma to znaczenia, jeśli jenkins_job_dsl_temp_job_delete
jest false.
Przykładowy Playbook
- hosts: serwery
roles:
- { role: meierw.jenkins_job_dsl_exec }
Licencja
MIT
Informacje o autorze
- Autor: Walter Meier
Creates, executes and then deletes a temporary Jenkins job containing a Job DSL script.
ansible-galaxy install meierw.jenkins_job_dsl_exec