Spec-Zone.ru › Ansible

модуль theforeman.foreman.provisioning_template — Управление шаблонами подготовки

Примечание

Этот модуль входит в коллекцию theforeman.foreman (версия 5.11.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install theforeman.foreman. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: theforeman.foreman.provisioning_template.

Добавлен в theforeman.foreman 1.0.0

  • Краткое описание
  • Требования
  • Параметры
  • Атрибуты
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Управление шаблонами подготовки

Псевдонимы: foreman_provisioning_template

Требования

Следующие компоненты должны быть установлены на узле, на котором выполняется этот модуль.

  • requests

Параметры

Параметр

Комментарии

audit_comment

string

Содержимое поля комментария аудита

ca_path

path

Файл в формате PEM, содержащий сертификат CA для проверки.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_CA_PATH.

file_name

path

Путь к файлу шаблона, который необходимо импортировать.

Для указания источника «содержимого» шаблона подготовки необходимо задать этот параметр или template.

kind

string

Тип шаблона подготовки

Варианты:

  • "Bootdisk"
  • "cloud-init"
  • "finish"
  • "host_init_config"
  • "iPXE"
  • "job_template"
  • "kexec"
  • "POAP"
  • "provision"
  • "PXEGrub"
  • "PXEGrub2"
  • "PXELinux"
  • "registration"
  • "script"
  • "snippet"
  • "user_data"
  • "ZTP"

locations

list / elements=string

Список местоположений, которым должна быть назначена сущность

locked

boolean

Определяет, нужно ли заблокировать шаблон

Варианты:

  • false
  • true

name

string

Имя шаблона подготовки.

Если имя не указано, оно будет определено по заголовку name шаблона или имени файла (в этом порядке).

Специальное значение «*» можно использовать для массовых действий (изменения, удаления) со всеми существующими шаблонами.

oauth1_consumer_key

string

Ключ потребителя OAuth1 для доступа к серверу Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_OAUTH1_CONSUMER_KEY.

oauth1_consumer_secret

string

Секрет потребителя OAuth1 для доступа к серверу Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_OAUTH1_CONSUMER_SECRET.

operatingsystems

list / elements=string

Список операционных систем, которым должна быть назначена сущность.

Поиск операционных систем выполняется по их заголовку, сформированному в формате «<name> <major>.<minor>».

Можно не указывать версию, если существует только одна операционная система с таким именем.

organizations

list / elements=string

Список организаций, которым должна быть назначена сущность

password

string

Пароль пользователя, обращающегося к серверу Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_PASSWORD.

server_url

string / обязательный

URL сервера Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_SERVER_URL.

state

string

Состояние сущности

present_with_defaults обеспечит существование сущности, но не будет обновлять уже существующие

Варианты:

  • "present" ← (по умолчанию)
  • "present_with_defaults"
  • "absent"

template

string

Содержимое шаблона подготовки.

Для указания источника «содержимого» шаблона подготовки необходимо задать этот параметр или file_name.

updated_name

string

Новое имя шаблона подготовки. Если задан этот параметр, модуль не будет идемпотентным.

use_gssapi

boolean

Использовать GSSAPI для аутентификации; обычно это требуется для Kerberos или Kerberos с аутентификацией Negotiate.

Требуется установленная библиотека Python requests-gssapi.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_USE_GSSAPI.

Варианты:

  • false ← (по умолчанию)
  • true

username

string

Имя пользователя, обращающегося к серверу Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_USERNAME.

validate_certs

boolean

Проверять ли TLS-сертификаты сервера Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_VALIDATE_CERTS.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Можно запускать в режиме check_mode и получать прогноз состояния изменённости без изменения сущности

diff_mode

Поддержка: полная

В режиме diff будут возвращены сведения об изменениях (или о возможных изменениях в режиме check_mode)

Примеры

# Keep in mind, that in this case, the inline parameters will be overwritten
- name: "Create a Provisioning Template inline"
  theforeman.foreman.provisioning_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: A New Finish Template
    kind: finish
    state: present
    template: |
      <%#
          name: Finish timetravel
          kind: finish
      %>
      cd /
      rm -rf *
    locations:
      - Gallifrey
    organizations:
      - TARDIS INC

- name: "Create a Provisioning Template from a file"
  theforeman.foreman.provisioning_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    file_name: timeywimey_template.erb
    state: present
    locations:
      - Gallifrey
    organizations:
      - TARDIS INC

# Due to the module logic, deleting requires a template dummy,
# either inline or from a file.
- name: "Delete a Provisioning Template"
  theforeman.foreman.provisioning_template:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: timeywimey_template
    template: |
      <%#
          dummy:
      %>
    state: absent

- name: "Create a Provisioning Template from a file and modify with parameter"
  theforeman.foreman.provisioning_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 provisioning templates"
  theforeman.foreman.provisioning_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 Provisioning Community Templates
  theforeman.foreman.provisioning_template:
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present
    template: '{{ lookup("file", item.src) }}'
  with_filetree: '/path/to/provisioning/templates'
  when: item.state == 'file'


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

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

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

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

Ключ

Описание

entity

dictionary

Итоговое состояние затронутых сущностей, сгруппированных по типу.

Возвращается: при успешном выполнении

provisioning_templates

list / elements=dictionary

Список шаблонов подготовки.

Возвращается: при успешном выполнении

Авторы

  • Bernhard Hopfenmueller (@Fobhep) ATIX AG
  • Matthias Dellweg (@mdellweg) ATIX AG

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

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

Spec-Zone.ru

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