win_wait_for - Ожидание условия перед продолжением
Новое в версии 2.4.
Обзор
- Вы можете подождать определенное количество времени
timeout, это значение по умолчанию, если ничего не указано. - Ожидание готовности порта полезно, когда службы не становятся доступными сразу после возвращения их скриптов инициализации, что характерно для некоторых серверов приложений Java.
- Вы можете подождать, пока файл будет существовать или не существовать на файловой системе.
- Этот модуль также может использоваться для ожидания совпадения строки с регулярным выражением в файле.
- Вы можете дождаться закрытия активных соединений на локальном порту перед продолжением.
Параметры
| параметр | обязательно | по умолчанию | значения | комментарии |
|---|---|---|---|---|
| connect_timeout | нет | 5 | Максимальное время ожидания подключения в секундах перед закрытием и повторной попыткой. | |
| delay | нет | Количество секунд ожидания перед началом опроса. | ||
| exclude_hosts | нет | Список хостов или IP-адресов, которые нужно игнорировать при поиске активных TCP-соединений, когда state=drained. | ||
| host | нет | 127.0.0.1 | Разрешимый хост или IP-адрес, для ожидания. Если state=drained , то будут проверяться только соединения на указанном IP, можно использовать '0.0.0.0' для использования всех IP-адресов хоста. | |
| path | нет | Путь к файлу на файловой системе для проверки. Если state присутствует или запущен, то будет ожидание пока файл существует.Если state отсутствует, то будет ожидание пока файла не будет существовать. | ||
| port | нет | Номер порта для опроса host. | ||
| search_regex | нет | Может быть использован для соответствия строке в файле. Если state присутствует или запущен, то будет ожидание пока регулярное выражение совпадает.Если state отсутствует, то будет ожидание пока регулярное выражение не совпадает.По умолчанию используется многострочное регулярное выражение. | ||
| sleep | нет | 1 | Количество секунд ожидания между проверками. | |
| state | нет | started |
| При проверке порта, started гарантирует, что порт открыт, stopped проверяет, что он закрыт, а drained проверяет наличие активных соединений.При проверке файла или строки поиска present или started гарантирует, что файл или строка присутствуют, absent проверяет, что файл или строка отсутствуют или удалены. |
| timeout | нет | 300 | Максимальное время ожидания в секундах. |
Примеры
- name: wait 300 seconds for port 8000 to become open on the host, don't start checking for 10 seconds
win_wait_for:
port: 8000
delay: 10
- name: wait 150 seconds for port 8000 of any IP to close active connections
win_wait_for:
host: 0.0.0.0
port: 8000
state: drained
timeout: 150
- name: wait for port 8000 of any IP to close active connection, ignoring certain hosts
win_wait_for:
host: 0.0.0.0
port: 8000
state: drained
exclude_hosts: ['10.2.1.2', '10.2.1.3']
- name: wait for file C:\temp\log.txt to exist before continuing
win_wait_for:
path: C:\temp\log.txt
- name: wait until process complete is in the file before continuing
win_wait_for:
path: C:\temp\log.txt
search_regex: process complete
- name: wait until file if removed
win_wait_for:
path: C:\temp\log.txt
state: absent
- name: wait until port 1234 is offline but try every 10 seconds
win_wait_for:
port: 1234
state: absent
sleep: 10
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| название | описание | возвращается | тип | пример |
|---|---|---|---|---|
| attempts | Количество попыток опроса файла или порта перед завершением модуля. | всегда | int | 1 |
| elapsed | Время в секундах, прошедшее между началом опроса и окончанием модуля. Включает задержку, если параметр установлен. | всегда | float | 2.1406487 |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратной совместимости.
Для получения помощи в разработке модулей, если у вас есть такие намерения, пожалуйста, прочитайте Информация о сообществе и участие, Тестирование 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.4/win_wait_for_module.html