Ansible Tower 3.5和自定义python模块

时间:2019-06-10 19:09:16

标签: ansible ansible-tower

当我尝试将自定义python模块导入另一个模块时,它在Tower 3.5中不再起作用。此精确设置适用于2.7.1,当前Ansible版本为2.7.10。

我在剧本中使用的自定义模块在库目录中,而导入的模块在主目录中。例如:

| My Repo
|
| example.py
|
| library/
|   main.py

我已经读到设置ANSIBLE_LIBRARY env变量将告诉ansible在哪里可以找到该模块。我尝试设置此ANSIBLE_LIBRARY:“ ./”,也设置“ {{playbook_dir}}”,但这无济于事。这个项目是从一个仓库同步的,我没有到定制模块的恒定路径...

在main.py中,如果我尝试导入示例,我曾经能够做到这一点:

#!/usr/bin/python
from ansible.module_utils.basic import *
import example

这是错误消息:ImportError:没有名为example的模块

其他信息,这是我想出的解决方法(MOD_PATH为'{{playbook_dir}}'):

sys.path.insert(0, yaml_data['MOD_PATH'])
import example

0 个答案:

没有答案