ansible雙迴圈依when條件一一執行

ansible雙迴圈依when條件一一執行

在ansible中,變數是從暫存器輸出動態取得的,第一個迴圈將從註冊的輸出結果中收集值,一旦滿足when條件,下一個迴圈就應該開始執行。如何在ansible中的when條件中使用兩個循環

- name: stop the http service
 command: sh http.sh stop {{item}}
 args:
   chdir: /opt/http/
 loop: “{{http.stdout_lines}}”
 when: “item.stdout != 0"
 loop: “{{wordcount.results}}”

這是程式碼,但我無法連續使用兩個循環,如果一個循環完成,它應該運行下一個循環

答案1

抱歉,但它不會按照您想要的方式工作。loop每個任務只能定義一次;第二個定義將被忽略。您可能需要將其分解為多個任務,但是,我無法提出解決方案,因為從您的範例中並不完全清楚您想要完成的任務。更多背景資訊可能會有所幫助。

相關內容