Spec-Zone.ru › Ansible 2.11

theforeman.foreman.job_template – Управление шаблонами задач

Примечание

Этот плагин входит в коллекцию theforeman.foreman (версия 1.5.1).

Для его установки используйте: ansible-galaxy collection install theforeman.foreman.

Для использования в книге задач укажите: theforeman.foreman.job_template.

Впервые в версии 1.0.0: theforeman.foreman

  • Обзор
  • Требования
  • Параметры
  • Примеры
  • Возвращаемые значения

Обзор

  • Управление шаблонами задач удалённого выполнения

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • requests

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
audit_comment
строка
Содержание поля комментария аудита
description_format
строка
Описание шаблона задачи. Можно использовать шаблоны ввода.
file_name
путь
Путь к файлу шаблона, который необходимо импортировать.
Требуется либо этот параметр, либо template в качестве источника содержимого шаблона задачи.
job_category
строка
Категория, к которой должен быть присвоен шаблон
locations
список / элементы=строка
Список местоположений, к которым должна быть привязана сущность
locked
булево
    Варианты:
  • нет ←
  • да
Определяет, будет ли заблокирован шаблон
name
строка
Имя шаблона задачи.
Если опущено, будет определено из заголовка name шаблона или имени файла (в этом порядке).
Специальное значение "*" можно использовать для выполнения массовых действий (изменение, удаление) со всеми существующими шаблонами.
organizations
список / элементы=строка
Список организаций, к которым должна быть привязана сущность
password
строка / требуется
Пароль пользователя, который обращается к серверу Foreman.
Если значение не указано в задаче, будет использовано значение переменной среды FOREMAN_PASSWORD.
provider_type
строка
Определяет, через какой провайдер должен быть выполнен шаблон
server_url
строка / требуется
URL сервера Foreman.
Если значение не указано в задаче, будет использовано значение переменной среды FOREMAN_SERVER_URL.
snippet
булево
    Варианты:
  • нет
  • да
Определяет, будет ли шаблон фрагментом
state
строка
    Варианты:
  • наличие ←
  • наличие с значениями по умолчанию
  • отсутствие
Состояние сущности
present_with_defaults гарантирует существование сущности, но не будет обновлять существующие
template
строка
Содержимое шаблона задачи.
Требуется либо этот параметр, либо file_name в качестве источника содержимого шаблона задачи.
template_inputs
список / элементы=словарь
Входы шаблона, используемые в шаблоне задачи
advanced
булево
    Варианты:
  • нет
  • да
Ввод шаблона расширенный
description
строка
Описание ввода шаблона
fact_name
строка
Имя факта для использования.
Требуется при input_type=fact.
input_type
строка / требуется
    Варианты:
  • пользователь
  • факт
  • переменная
  • puppet_parameter
тип ввода
name
строка / требуется
Имя ввода шаблона
options
список / элементы=сырой
Значения шаблона для ввода пользователем. Должен быть массив любого типа.
puppet_class_name
строка
Имя класса Puppet.
Требуется при input_type=puppet_parameter.
puppet_parameter_name
строка
Имя параметра Puppet.
Требуется при input_type=puppet_parameter.
required
булево
    Варианты:
  • нет
  • да
Требуется ли ввод
resource_type
строка
Тип ресурса
value_type
строка
    Варианты:
  • простой
  • поиск
  • дата
Тип значения
variable_name
строка
Имя переменной для использования.
Требуется при input_type=variable.
username
строка / требуется
Имя пользователя, обращающегося к серверу Foreman.
Если значение не указано в задаче, будет использовано значение переменной среды FOREMAN_USERNAME.
validate_certs
булево
    Варианты:
  • нет
  • да ←
Выполнять ли проверку сертификатов TLS сервера Foreman?
Если значение не указано в задаче, будет использовано значение переменной среды FOREMAN_VALIDATE_CERTS.

Примеры

- name: "Create a Job Template inline"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: A New Job Template
    state: present
    template: |
      <%#
          name: A Job Template
      %>
      rm -rf <%= input("toDelete") %>
    template_inputs:
      - name: toDelete
        input_type: user
    locations:
    - Gallifrey
    organizations:
    - TARDIS INC

- name: "Create a Job Template from a file"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: a new job template
    file_name: timeywimey_template.erb
    template_inputs:
      - name: a new template input
        input_type: user
    state: present
    locations:
    - Gallifrey
    organizations:
    - TARDIS INC

- name: "remove a job template's template inputs"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: a new job template
    template_inputs: []
    state: present
    locations:
    - Gallifrey
    organizations:
    - TARDIS INC

- name: "Delete a Job Template"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: timeywimey
    state: absent

- name: "Create a Job Template from a file and modify with parameter(s)"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    file_name: timeywimey_template.erb
    name: Wibbly Wobbly Template
    state: present
    locations:
    - Gallifrey
    organizations:
    - TARDIS INC

# Providing a name in this case wouldn't be very sensible.
# Alternatively make use of with_filetree to parse recursively with filter.
- name: Parsing a directory of Job templates
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    file_name: "{{ item }}"
    state: present
    locations:
    - SKARO
    organizations:
    - DALEK INC
    with_fileglob:
     - "./arsenal_templates/*.erb"

# If the templates are stored locally and the ansible module is executed on a remote host
- name: Ensure latest version of all your Job Templates
  theforeman.foreman.job_template:
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present
    template: '{{ lookup("file", item.src) }}'
  with_filetree: '/path/to/job/templates'
  when: item.state == 'file'


# with name set to "*" bulk actions can be performed
- name: "Delete *ALL* Job Templates"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: "*"
    state: absent

- name: "Assign all Job Templates to the same organization(s)"
  theforeman.foreman.job_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: "*"
    state: present
    organizations:
    - DALEK INC
    - sky.net
    - Doc Brown's garage

Возвращаемые значения

Общие возвращаемые значения описаны здесь. Ниже приведены поля, уникальные для данного модуля:

Ключ Возвращаемое значение Описание
entity
словарь
успех
Конечное состояние затронутых сущностей, сгруппированных по их типу.

job_templates
список / элементы=словарь
успех
Список шаблонов задач.

template_inputs
список / элементы=словарь
успех
Список вводов шаблона, связанных с шаблоном задачи.



Авторы

  • Manuel Bonk (@manuelbonk) ATIX AG
  • Matthias Dellweg (@mdellweg) ATIX AG

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/theforeman/foreman/job_template_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API