Обращения к внешним источникам данных
Плагины обращений к внешним источникам данных позволяют получить доступ к внешним источникам данных. Как и все шаблоны, эти плагины обрабатываются на управляющей машине Ansible и могут включать чтение файловой системы, а также подключение к внешним хранилищам данных и службам. Эти данные затем становятся доступными с помощью стандартной системы шаблонов Ansible.
Примечание
- Обращения к внешним источникам данных выполняются на локальном компьютере, а не на удалённом.
- Они выполняются в каталоге, содержащем роль или задание, в отличие от локальных задач, которые выполняются в каталоге исполняемого скрипта.
- Вы можете передать wantlist=True в обращения к внешним источникам данных, чтобы использовать их в циклах «for» в шаблонах Jinja2.
- Обращения к внешним источникам данных — это расширенная функция. Вы должны хорошо понимать работу с заданиями Ansible перед их включением.
Предупреждение
Некоторые обращения к внешним источникам данных передают аргументы в оболочку. При использовании переменных из удалённого/ненадёжного источника используйте фильтр |quote для обеспечения безопасного использования.
Обращения к внешним источникам данных и циклы
Плагины обращений к внешним источникам данных — это способ запроса данных из внешних источников, таких как команды оболочки или даже хранилища пар «ключ-значение».
До версии Ansible 2.5 обращения к внешним источникам данных в основном использовались косвенно в конструкциях with_<lookup для циклов. Начиная с версии Ansible 2.5, обращения к внешним источникам данных используются более явно в качестве части выражений Jinja2, передаваемых в ключевое слово loop.
Обращения к внешним источникам данных и переменные
Один из способов использования обращений к внешним источникам данных — это заполнение переменных. Эти макросы оцениваются каждый раз, когда они используются в задаче (или шаблоне):
vars:
motd_value: "{{ lookup('file', '/etc/motd') }}"
tasks:
- debug:
msg: "motd value is {{ motd_value }}"
Для получения дополнительной информации и полного списка доступных плагинов обращений к внешним источникам данных, см. Работа с плагинами.
См. также
- Работа с заданиями
- Введение в задания
- Условные операторы
- Условные операторы в заданиях
- Переменные
- Всё о переменных
- Циклы
- Циклы в заданиях
- Список рассылки пользователей
- Есть вопрос? Загляните в группу Google!
- irc.freenode.net
- Канал IRC-чата #ansible
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/user_guide/playbooks_lookups.html