Инвентаризация community.general.gitlab_runners – плагин динамической инвентаризации Ansible для исполнителей GitLab
Примечание
Этот плагин инвентаризации входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для работы с этим плагином инвентаризации требуются дополнительные компоненты. Подробнее см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.gitlab_runners.
Краткое описание
- Читает инвентарные данные из API GitLab.
- Использует файл конфигурации YAML gitlab_runners.[yml|yaml].
Требования
Следующие компоненты должны быть установлены на локальном управляющем узле, который выполняет этот плагин инвентаризации.
- python-gitlab > 1.8.0
Параметры
Параметр | Комментарии |
|---|---|
api_token псевдонимы: private_token, access_token строка | Токен GitLab для входа. Конфигурация:
|
compose словарь | Создает переменные на основе выражений jinja2. По умолчанию: |
filter строка | Фильтр исполнителей, получаемых из API GitLab. Варианты:
Конфигурация:
|
groups словарь | Добавляет узлы в группы на основе условий Jinja2. По умолчанию: |
keyed_groups список / элементы=словарь | Добавляет узлы в группу на основе значений переменной. По умолчанию: |
|
default_value строка добавлено в ansible-core 2.12 |
Значение по умолчанию, если значение переменной узла — Этот параметр нельзя использовать одновременно с |
|
key строка |
Ключ входного словаря, используемый для создания групп. |
|
parent_group строка |
Родительская группа для группы, заданной по ключу. |
|
prefix строка |
Имя группы, заданной по ключу, будет начинаться с этого префикса. По умолчанию: |
|
separator строка |
Разделитель, используемый для формирования имени группы, заданной по ключу. По умолчанию: |
|
trailing_separator логическое значение добавлено в ansible-core 2.12 |
Установите этот параметр в Этот параметр нельзя использовать одновременно с Варианты:
|
leading_separator логическое значение добавлено в ansible-core 2.11 | Используется вместе с По умолчанию имя группы, заданной по ключу, для которой не указан префикс или разделитель, начинается с символа подчеркивания. Это происходит потому, что префикс по умолчанию — Установите этот параметр в Если имя группы формируется на основе сопоставления, разделитель по-прежнему используется для объединения элементов. Чтобы вообще не использовать разделитель в имени группы, задайте для группы по ключу пустую строку в качестве разделителя. Варианты:
|
plugin строка / обязательный | Имя этого плагина. Для распознавания плагином самого себя здесь всегда должно быть указано Варианты:
|
server_url строка / обязательный | URL сервера GitLab с указанием протокола (например, http или https). Конфигурация:
|
strict логическое значение | Если Поскольку в выражениях можно использовать факты, они могут быть доступны не всегда. По умолчанию такие ошибки игнорируются. Варианты:
|
use_extra_vars логическое значение добавлено в ansible-core 2.11 | Объединяет дополнительные переменные с доступными переменными для формирования значений (наивысший приоритет). Варианты:
Конфигурация:
|
verbose_output логическое значение | Включает или отключает добавление всех доступных метаданных узлов. Варианты:
|
Примечание
Перечисленные выше записи конфигурации для каждого типа записей (переменная Ansible, переменная окружения и т. д.) упорядочены от низкого к высокому приоритету. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше. Типы записей также упорядочены по приоритету от низкого к высокому. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).
Примечания
Примечание
- На этом этапе инвентарные данные еще не окончательно сформированы, поэтому автоматически заполненные группы
allиungroupedбудут содержать только то, что в них явно добавили предыдущие источники инвентаризации. - Во время построения инвентарных данных недоступны динамические «магические переменные». Например,
groupsиhostvarsеще не существуют.
Примеры
---
# gitlab_runners.yml
plugin: community.general.gitlab_runners
host: https://gitlab.com
---
# Example using constructed features to create groups and set ansible_host
plugin: community.general.gitlab_runners
host: https://gitlab.com
strict: false
keyed_groups:
# add e.g. amd64 hosts to an arch_amd64 group
- prefix: arch
key: 'architecture'
# add e.g. linux hosts to an os_linux group
- prefix: os
key: 'platform'
# create a group per runner tag
# e.g. a runner tagged w/ "production" ends up in group "label_production"
# hint: labels containing special characters will be converted to safe names
- key: 'tag_list'
prefix: tag
Ссылки на коллекцию
© 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/community/general/gitlab_runners_inventory.html