Специальные переменные
Магические переменные
Эти переменные не могут быть установлены пользователем напрямую; Ansible всегда будет перезаписывать их, чтобы отразить внутреннее состояние.
-
ansible_check_mode -
Булево значение, указывающее, находимся ли мы в режиме проверки.
-
ansible_collection_name -
Имя коллекции, к которой относится выполняемая задача. В формате
namespace.collection -
ansible_config_file -
Полный путь к используемому конфигурационному файлу Ansible.
-
ansible_dependent_role_names -
Имена ролей, в настоящее время импортированных в текущий этап как зависимости других этапов.
-
ansible_diff_mode -
Булево значение, указывающее, находимся ли мы в режиме сравнения.
-
ansible_forks -
Целое число, отражающее максимальное количество вилок, доступных для этого выполнения.
-
ansible_index_var -
Имя значения, предоставленного
loop_control.index_var. Добавлено в2.9 -
ansible_inventory_sources -
Список источников, используемых в качестве инвентаризации.
-
ansible_limit -
Содержание параметра
--limitкомандной строки CLI для текущего выполнения Ansible. -
ansible_loop -
Словарь/карта, содержащая расширенную информацию о цикле при включении через
loop_control.extended -
ansible_loop_var -
Имя значения, предоставленного
loop_control.loop_var. Добавлено в2.8 -
ansible_parent_role_names -
Когда текущая роль выполняется с помощью действия include_role или import_role, эта переменная содержит список всех родительских ролей, при этом самая последняя роль (то есть роль, которая включила/импортировала эту роль) — это первый элемент в списке. При нескольких включениях этот список перечисляет последнюю роль (то есть роль, которая включила эту роль) в качестве первого элемента в списке. Также возможно, что конкретная роль существует в этом списке более одного раза.
Например: Когда роль A включает роль B, внутри роли B,
ansible_parent_role_namesбудет равно['A']. Если роль B затем включает роль C, список становится['B', 'A']. -
ansible_parent_role_paths -
Когда текущая роль выполняется с помощью действия include_role или import_role, эта переменная содержит список путей всех родительских ролей, при этом самая последняя роль (то есть роль, которая включила/импортировала эту роль) — это первый элемент в списке. Пожалуйста, обратитесь к
ansible_parent_role_namesдля порядка элементов в этом списке. -
ansible_play_batch -
Список активных хостов в текущем этапе выполнения, ограниченный параметром serial, также известным как «пакет». Неудавшиеся/ недоступные хосты не считаются «активными».
-
ansible_play_hosts -
Список хостов в текущем этапе выполнения, не ограниченный параметром serial. Неудавшиеся/ недоступные хосты исключаются из этого списка.
-
ansible_play_hosts_all -
Список всех хостов, на которые был нацелен этап.
-
ansible_play_name -
Имя текущего выполняемого этапа. Добавлено в
2.8. (Атрибутnameэтапа, а не имя файла книги задач.) -
ansible_play_role_names -
Имена ролей, которые в настоящее время импортированы в текущий этап. Этот список не содержит имена ролей, которые неявно включены через зависимости.
-
ansible_playbook_python -
Путь к интерпретатору Python, используемому Ansible на управляющем узле.
-
ansible_role_name -
Полное квалифицированное имя роли коллекции в формате
namespace.collection.role_name -
ansible_role_names -
Имена ролей, в настоящее время импортированных в текущий этап, или роли, на которые ссылаются как зависимости импортированных в текущий этап ролей.
-
Содержание параметра
--tagsкомандной строки CLI, который указывает, какие метки будут включены для текущего выполнения. Обратите внимание, что если--tagsне передано, эта переменная по умолчанию будет["all"]. -
ansible_search_path -
Текущий путь поиска для плагинов действий и поисков, другими словами, где мы ищем относительные пути при использовании
template: src=myfile -
Содержание параметра
--skip-tagsкомандной строки CLI, который указывает, какие метки будут пропущены для текущего выполнения. -
ansible_verbosity -
Текущая настройка уровня подробности для Ansible.
-
ansible_version -
Словарь/карта, содержащая информацию о текущей версии выполняемого ansible. Она имеет следующие ключи: full, major, minor, revision и string.
-
group_names -
Список групп, к которым принадлежит текущий хост. Он всегда отражает исходную
inventory_hostnameи игнорирует делегирование. -
groups -
Словарь/карта со всеми группами в инвентаризации, и каждая группа имеет список хостов, которые к ней принадлежат.
-
hostvars -
Словарь/карта со всеми хостами в инвентаризации и переменными, назначенными им.
-
inventory_dir -
Директория источника инвентаризации, в которой
inventory_hostnameбыла первоначально определена. Это всегда отражаетinventory_hostnameи игнорирует делегирование. -
inventory_hostname -
Имя инвентаризации для текущего хоста, по которому происходит итерация в процессе. Это не зависит от делегирования, всегда отражает исходный хост для задачи.
-
inventory_hostname_short -
Сокращенная версия
inventory_hostname, является первой частью после разделения ее через.. Например, дляinventory_hostnamewww.example.com,wwwбудетinventory_hostname_short. Это зависит от делегирования, поэтому будет отражать «краткое имя» делегированного хоста. -
inventory_file -
Имя файла источника инвентаризации, в котором
inventory_hostnameбыло первоначально определено. Игнорирует делегирование и всегда отражает информацию дляinventory_hostname. -
omit -
Специальная переменная, позволяющая «пропустить» опцию в задаче, например,
- user: name=bob home={{ bobs_home|default(omit) }} -
play_hosts -
Устарело, то же самое, что и ansible_play_batch
-
playbook_dir -
Путь к каталогу текущей книги задач, которая выполняется. ПРИМЕЧАНИЕ: Это может отличаться от каталога книги задач, переданной команде
ansible-playbookкомандной строки, когда книга задач содержит инструкциюimport_playbook. -
role_name -
Имя роли, которая в настоящее время выполняется.
-
role_names -
Устарело, то же самое, что и ansible_play_role_names
-
role_path -
Путь к каталогу текущей выполняемой роли.
Факты
Это переменные, которые содержат информацию, относящуюся к текущему хосту (inventory_hostname). Они доступны только после их предварительного сбора. См. Поиск переменных: факты и магические переменные для получения дополнительной информации.
-
ansible_facts -
Содержит любые собранные или кэшированные факты для
inventory_hostnameФакты обычно собираются модулем setup автоматически в этапе, но любой модуль может возвращать факты. -
ansible_local -
Содержит любые собранные или кэшированные «локальные факты» для
inventory_hostnameДоступные ключи зависят от созданных пользовательских фактов. См. модуль setup и facts.d или локальные факты для получения более подробной информации.
Переменные подключения
Переменные подключения обычно используются для настройки параметров выполнения действий на целевом узле. Большинство из них соответствуют плагинам подключения, но не все из них специфичны для них; обычно вовлечены и другие плагины, такие как shell, терминал и become. Описываются только общие переменные, так как каждый плагин подключения/become/shell и т.д. может определять свои собственные переопределения и специфические переменные. Обратитесь к Управление поведением Ansible: правила приоритета, чтобы узнать, как переменные подключения взаимодействуют с настройками конфигурации, опциями командной строки и ключевыми словами playbook.
-
ansible_become_user -
Пользователь, которым Ansible становится после использования повышения привилегий. Он должен быть доступен для пользователя «логин».
-
ansible_connection -
Плагин подключения, фактически используемый для задачи на целевом хосте.
-
ansible_host -
IP-адрес/имя целевого хоста вместо
inventory_hostname. -
ansible_python_interpreter -
Путь к исполняемому файлу Python, который Ansible должен использовать на целевом хосте.
-
ansible_user -
Пользователь, под которым Ansible выполняет вход.
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/reference_appendices/special_variables.html