У меня есть задача проверить, перезагрузился ли мой коммутатор, и я хочу запускать задачу, пока она не вернет успешный пинг. У меня есть переключатель Aruba 2530, и когда я пингую его вручную, я получаю в ответ следующую строку:
192.168.12.200 жив, время = 2 мс
Моя идея состоит в том, чтобы проверить слово «вживую» в возвращаемой строке, чтобы убедиться, что пинг прошел успешно. Это даже идеальный способ пойти? О, и я использую модули из https://github.com/aruba/aruba-switch-ansible
Задача, которую я имею, выглядит следующим образом:
arubaos_switch_ssh_cli:
ip: "{{ ansible_host }}"
user: "{{ ansible_user }}"
password: "{{ ansible_password }}"
show_command: "ping 192.168.12.200"
register: ping_result
retries: 12
delay: 5
until: ???"
Я попытался найти ответ в Google и попробовал несколько различных синтаксисов. Большинство вещей, которые я обнаружил, рассматривают условие «когда», поэтому я не уверен, как «когда» и «до» сравниваются друг с другом, когда смотрят на их синтаксис.
Я пытался выполнить следующее:
"'alive' in ping_result.cli_output"
"ping_result.cli_output | search('alive')
"{{ 'alive' in ping_result.cli_output }}"
и несколько других, которые не работали ...
Спасибо всем заранее!