我想调整一个Ansible模块,我正在使用多个模块。现在我想要其中一个小调整。如何覆盖默认代码?
我不确定,但我的假设是,如果我在当前目录中创建了类似的模块目录结构,它将引用此代码,对于模块的其余部分,它将引用默认代码,例如。对于yum_repository module
,默认路径为:
/usr/local/Cellar/ansible/2.4.1.0/libexec/lib/python2.7/site-packages/ansible/modules/packaging/os/yum_repository.py
但是如果我在我的工作目录中创建目录结构:
ansible/modules/packaging/os/
并保留已编辑的文件yum_repository.py
,它应该引用此编辑的文件。
答案 0 :(得分:5)
Ansible将在playbook目录的./library
子目录中查找模块。
您还可以在Ansible配置文件中使用library
parameter来指定模块的公共目录。