如何以同步方式运行Ansible?

时间:2019-03-28 15:25:26

标签: ansible

我运行这样的python脚本:

#!/usr/bin/env python
import subprocess,time

command = "ansible all -i /etc/ansible/hosts -m shell -a 'echo $(date)>>/tmp/111.txt && sleep 10 && echo $(date)>>/tmp/111.txt'"
subprocess.Popen(command, shell=True)
time.sleep(10)
print ("OK,DONE!")

这是一个非常示例的脚本,只需运行ansible并等待10秒钟,这应该花费20秒钟,但是我发现完成此脚本后的结果只有10秒钟。

为什么?我该如何解决? 顺便说一句,我的ansible是2.5.4。

1 个答案:

答案 0 :(得分:0)

您正在异步运行ansible命令。请在此处查看此答案,该答案显示了如何以同步方式使用子流程:https://stackoverflow.com/a/22698825/4276009