python 调用ansible-playbook
时间: 2023-12-06 18:37:07 浏览: 245
ansible-receipts:Ansible 回调将有关运行的详细信息输出到 JSON 文件
可以使用Python中的subprocess模块来调用ansible-playbook命令。以下是一个简单的示例代码:
```python
import subprocess
playbook_path = '/path/to/playbook.yml'
inventory_path = '/path/to/inventory'
# 构建ansible-playbook命令
command = ['ansible-playbook', playbook_path, '-i', inventory_path]
# 执行ansible-playbook命令
result = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# 输出结果
print(result.stdout.decode())
```
在上面的代码中,我们首先定义了playbook和inventory的路径,然后使用subprocess模块构建了ansible-playbook命令,并执行了该命令。最后,我们使用stdout属性获取命令的输出结果,并使用decode()方法将其转换为字符串格式。
需要注意的是,如果你的Ansible配置需要密码或密钥进行身份验证,你需要在命令中添加相应的参数。
阅读全文