您可以使用以下代码示例在Ansible中使用fetch操作:
- hosts: target_host
gather_facts: false
tasks:
- name: Fetch file
fetch:
src: /path/to/file
dest: /tmp/
flat: yes
import ansible.constants as C
from ansible.executor import playbook_executor
def run_playbook(playbook):
pbex = playbook_executor.PlaybookExecutor(
playbooks=[playbook],
inventory=C.DEFAULT_HOST_LIST,
variable_manager=C.variable_manager,
loader=C.loader
)
results = pbex.run()
return results
if __name__ == '__main__':
playbook = 'fetch.yml'
results = run_playbook(playbook)
print(results)
$ python fetch_example.py
这将执行fetch.yml playbook并将指定的文件从目标主机上获取到/tmp/目录下。要更改目标主机,请将target_host替换为目标主机的IP地址或主机名。
请确保已正确安装和配置Ansible,并在运行fetch_example.py之前将相关的Python模块导入到脚本中。