python代码调用ansible
使用ansible_runner模块,需要安装2个模块pip install ansible_runner ansible
extravars = {'ansible_user': 'test'} # 设置执行参数 inventory = "/PythonCode/test/inventory.hosts" #设置需要连接的远程机器的文件,可以用openfile动态创建 private_data_dir = os.path.join("/PythonCode/test/", uuid.uuid4().hex) # 创建临时文件夹用于存放ansible的临时文件 os.mkdir(private_data_dir) r = ansible_runner.run(inventory=inventory, extravars=extravars, private_data_dir=private_data_dir, host_pattern='all', module='shell', module_args='sh /tmp/test.sh', ) print("{}: {}".format(r.status, r.rc))