Шаблоны (Jinja2)
Ansible использует шаблоны Jinja2 для динамических выражений и доступа к переменным. Ansible включает множество специализированных фильтров и тестов для шаблонов. Вы также можете использовать все стандартные фильтры и тесты, включённые в Jinja2. Ansible также предлагает новый тип плагинов: Плагины поиска.
Все операции с шаблонами выполняются на контроллере Ansible перед отправкой и выполнением задачи на целевой машине. Этот подход сводит к минимуму требования к пакету на целевой машине (jinja2 требуется только на контроллере). Он также ограничивает количество данных, передаваемых Ansible на целевую машину. Ansible анализирует шаблоны на контроллере и передаёт только необходимую информацию для каждой задачи на целевую машину, вместо передачи всех данных на контроллер и анализа на целевой машине.
-
Использование фильтров для обработки данных
- Обработка неопределённых переменных
- Определение различных значений для true/false/null (троичная операция)
- Управление типами данных
- Форматирование данных: YAML и JSON
- Объединение и выбор данных
- Генерация случайных данных
- Управление переменными-списками
- Выбор из наборов или списков (теория множеств)
- Вычисление чисел (математика)
- Управление сетевыми взаимодействиями
- Шифрование и вычисление контрольных сумм строк и паролей
- Обработка текста
- Обработка строк
- Управление UUID
- Обработка дат и времени
- Получение имён ресурсов Kubernetes
- Тесты
- Поиски
- Python3 в шаблонах
Получение текущего времени
Введено в версии 2.8.
Функция now() Jinja2 получает объект Python datetime или строковое представление текущего времени.
Функция now() поддерживает 2 аргумента:
- utc
-
Укажите
Trueдля получения текущего времени в UTC. По умолчаниюFalse. - fmt
-
Принимает строку strftime, возвращающую отформатированную строку даты и времени.
См. также
- Введение в плейбуки
-
Введение в плейбуки
- Условные операторы
-
Условные операторы в плейбуках
- Циклы
-
Циклы в плейбуках
- Роли
-
Организация плейбуков по ролям
- Советы и хитрости
-
Советы и хитрости для плейбуков
- Список рассылки пользователей
-
Есть вопрос? Заходите на форум!
- 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.10/user_guide/playbooks_templating.html