exists#
Расширение тестирования ansible.builtin.exists проверяет, существует ли объект в файловой системе управляющего узла.
Проверка символических ссылок выполняется относительно их конечного объекта. Если нужно проверить именно наличие ссылки, используйте расширения ansible.builtin.link или ansible.builtin.link_exists.
Описание применения расширений тестирования приведено в документе Тестирование.
Особенности работы#
Для проверки существования объекта по заданному пути используйте конструкцию:
<path> is ansible.builtin.exists
Здесь <path> – путь к файлу или каталогу в файловой системе управляющего узла.
Для инверсии результата проверки добавьте not:
<path> is not ansible.builtin.exists
Входные значения#
Расширение принимает единственный входной параметр Input – путь к объекту на управляющем узле.
Выходные значения#
Расширение возвращает значение True или False в зависимости от результата проверки:
False– путь не существует;True– путь указывает на объект.
Пример#
Следующий пример демонстрирует проверку существования конфигурационного файла на управляющем узле.
---
# ...
tasks:
- name: Fail if configuration file is missing
ansible.builtin.debug:
msg: "Configuration file is missing"
when: '/etc/myapp/config.yml' is not ansible.builtin.exists
- name: Proceed with configuration steps
ansible.builtin.debug:
msg: "Configuration file exists"
when: '/etc/myapp/config.yml' is ansible.builtin.exists