Просмотры
Плагины просмотров позволяют получить доступ к внешним источникам данных. Как и все шаблоны, эти плагины обрабатываются на управляющей машине 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
- #ansible IRC чат-канал
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/user_guide/playbooks_lookups.html