jenkins_job_dsl_exec
jenkins_job_dsl_exec
Роль Ansible, которая создает, выполняет и затем удаляет временную задачу Jenkins, содержащую скрипт Job DSL.
Требования
- Сервис Jenkins с установленным плагином
Job DSL
. - Возможность выполнять jenkins_script на данном сервисе Jenkins.
Переменные роли
jenkins_job_dsl_url: http://localhost:8080
jenkins_job_dsl_user: admin
jenkins_job_dsl_password: admin
URL, имя пользователя и пароль для аутентификации в Jenkins. Будут использоваться для выполнения jenkins_script
.
jenkins_job_dsl_temp_job_name: C4lpe7GMX8S0pdZV6RWbKAkBfKWCPAOgAL9MGL03
Имя временной задачи, которая будет использоваться для выполнения скрипта DSL. Должно быть сложной строкой символов, чтобы избежать конфликта с настоящими именами задач.
jenkins_job_dsl_content: |
job('dsl-example-job') {
steps {
shell('echo Hello world!')
}
}
Скрипт DSL, который будет выполнен. Вы можете указать его прямо в коде, как в примере,
или использовать что-то вроде jenkins_job_dsl_content: "{{ lookup('file', 'files/myDslScript.groovy') }}"
, если хотите, чтобы ваш плейбук был более аккуратным.
jenkins_job_dsl_temp_job_run: true
Должна ли быть выполнена новая временная задача. Может быть полезно отключить это, если у вас есть другой план относительно того, когда или как вы хотите ее запустить.
jenkins_job_dsl_temp_job_delete: true
Должна ли временная задача быть удалена после выполнения.
Может быть полезно отключить это, если вы не получили желаемого результата и хотите проверить журнал сборки в Jenkins.
Не выполняет ничего, если jenkins_job_dsl_temp_job_run
равно false.
jenkins_job_dsl_temp_job_running_checks: 10
Сколько раз роль должна проверять, остановилась ли задача перед ее удалением.
Роль выполняет проверку каждую секунду, так что это количество также является предельным значением времени проверки в секундах.
Не выполняет ничего, если jenkins_job_dsl_temp_job_delete
равно false.
Пример плейбука
- hosts: servers
roles:
- { role: meierw.jenkins_job_dsl_exec }
Лицензия
MIT
Информация об авторе
- Автор: Уолтер Мейер
Creates, executes and then deletes a temporary Jenkins job containing a Job DSL script.
ansible-galaxy install meierw/jenkins-job-dsl-exec