Ansible 组合循环直到可转换
我想检查一下这是否是使用循环的正确方法。我需要做的是,对于每个循环,需要达到一个条件。如果达到该条件,请再次循环 下面是我的代码Ansible 组合循环直到可转换,ansible,Ansible,我想检查一下这是否是使用循环的正确方法。我需要做的是,对于每个循环,需要达到一个条件。如果达到该条件,请再次循环 下面是我的代码 - shell: "{{ item.script_location }}/{{ item.script_name }}" loop: "{{ script_list }}" loop_control: pause: 10 when: item.isExecuteScript | bool == true a
- shell: "{{ item.script_location }}/{{ item.script_name }}"
loop: "{{ script_list }}"
loop_control:
pause: 10
when: item.isExecuteScript | bool == true and inventory_hostname in groups['all'][5:]
register: verify_status
until: verify_status.stdout == "executed"
retries: 1030 delay: 5
瓦拉斯·伊梅尔
script_list
- { isExecuteScript: "true", script_name: "varify_stat_application.sh", script_location: "/home/application" }
- { isExecuteScript: "true", script_name: "varify_stat_server.sh", script_location: "/home/server" )
问:“这是使用循环直到的正确方法吗?”
A:不,不是。不适用于
循环
。打破一个循环是不可能的。循环
将一直运行,直到它完成所有项目,直到
使任务重复运行,直到满足条件为止。如果要有条件地省略循环中的项,请在时使用。如果是这种情况,最好的方法是什么,因为我需要使用循环来循环变量列表中的项。但同时,每个循环都需要先成功,然后再转到第二个循环。如果您有任何提示,请共享并删除不相关的内容(isExecuteScript,inventory_hostname…)。您好,我将进行更改。我测试了我的代码,它正在工作。为什么会这样。正如右循环所述,直到。但我测试了一下它是否有效。有什么想法请分享