community.general.jenkins_script – Выполняет скрипт groovy в экземпляре jenkins
Примечание
Этот плагин входит в коллекцию community.general (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в книге задач укажите: community.general.jenkins_script.
Обзор
- Модуль
jenkins_scriptпринимает скрипт и словарь значений для использования в скрипте и возвращает результат выполнения скрипта.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| args словарь | Словарь пар ключ-значение, используемых для форматирования скрипта с помощью string.Template (см. https://docs.python.org/2/library/string.html#template-strings). | |
| password строка | Пароль для подключения к серверу jenkins. | |
| script строка / обязательно | Скрипт groovy для выполнения. Он передаётся как строка шаблона, если определён параметр args. | |
| timeout целое число | Значение по умолчанию: 10 | Таймаут запроса в секундах |
| url строка | Значение по умолчанию: "http://localhost:8080" | Сервер jenkins для выполнения скрипта. По умолчанию используется локальный экземпляр jenkins, который не проксируется через веб-сервер. |
| user строка | Имя пользователя для подключения к серверу jenkins. | |
| validate_certs логическое значение |
| Если установлено в no, сертификаты SSL не будут проверяться. Это следует устанавливать только в no на сайтах с самозаверяющими сертификатами, так как это позволяет избежать проверки источника сайта. |
Примечания
Примечание
- Поскольку скрипт может выполнять любые действия, изменения не отслеживаются. Для ясного отражения любых внесённых изменений в выходные данные Ansible важно установить changed_when.
Примеры
- name: Obtaining a list of plugins
community.general.jenkins_script:
script: 'println(Jenkins.instance.pluginManager.plugins)'
user: admin
password: admin
- name: Setting master using a variable to hold a more complicate script
ansible.builtin.set_fact:
setmaster_mode: |
import jenkins.model.*
instance = Jenkins.getInstance()
instance.setMode(${jenkins_mode})
instance.save()
- name: Use the variable as the script
community.general.jenkins_script:
script: "{{ setmaster_mode }}"
args:
jenkins_mode: Node.Mode.EXCLUSIVE
- name: Interacting with an untrusted HTTPS connection
community.general.jenkins_script:
script: "println(Jenkins.instance.pluginManager.plugins)"
user: admin
password: admin
url: https://localhost
validate_certs: no
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| output строка | успешно | Результат выполнения скрипта Пример: Результат: true |
Авторы
- James Hogarth (@hogarthj)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/jenkins_script_module.html