Если оба значения run install plugins
и run status
возвращают что-то вроде
installed: InstallPlugin1, InstallPlugin2
, задача, приведенная ниже, выполнит работу
- name: install plugins
command: "run {{ item }}"
loop:
- install plugins
- status
register: result
until:
- result.stdout is search('InstallPlugin1')
- result.stdout is search('InstallPlugin2')
retries: 5
delay: 10
Невозможно использовать цикл, если только run status
возвращает подтверждение, потому что оператор до вычисляется на каждой итерации. Один из вариантов - объединить команды. Например,
- name: install plugins
command: "run install plugins; run status"
register: result
until:
- result.stdout is search('InstallPlugin1')
- result.stdout is search('InstallPlugin2')
retries: 5
delay: 10
Можно проверить зарегистрированный
результат в каждом цикле. После завершения цикла переменная
результат будет накапливать
результат.Результаты . Возможно, стоит пересмотреть это.
- debug:
var: result