通过Ansible运行带有模块的python脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过Ansible运行带有模块的python脚本相关的知识,希望对你有一定的参考价值。

我正在尝试通过ansible运行python脚本。它曾经工作正常,直到我开始使用一些额外的模块:

我的项目结构是:

roles
--- newclient
--------- files
---------------pythonscript.py
---------------helpers
--------------------- helper.py

我正在通过以下方式运行脚本:

- name: launch processors and history
  script: script.py 
  delegate_to: localhost

问题是当我通过python导入帮助程序时遇到ModuleNotFoundError。我不知道如何解决这个问题,因为脚本是从.ansible/tmp/发布的

答案

script模块首先复制脚本,然后执行它。

在您的情况下,只复制pythonscript.py

考虑在没有外部模块的情况下重写脚本,或者使用copysynchronize模块手动复制所有必需的文件,并使用command模块执行脚本。

以上是关于通过Ansible运行带有模块的python脚本的主要内容,如果未能解决你的问题,请参考以下文章

Ansible批量自动化管理工具

通过ansible模块的服务状态(不是通过“shell”或“c ommand”)

如何利用Ansible在远程机器上执行python脚本?

从带有参数的python脚本执行python文件jenkins]

Ansible作为python模块库使用

shell脚本ansible执行不成功