【发布时间】:2017-10-04 03:34:29
【问题描述】:
我不是 Ansible 新手,但我开始觉得自己是 Ansible 新手。我已经编写了一个自定义模块,这是我以前做过的事情,并且正在尝试在我正在为常规 Ansible 使用之外的应用程序开发的一组剧本中使用它(重要一点)。
当我运行包含使用自定义模块的任务的剧本时,该任务会被静默地“忽略”。意思是,根本没有输出,它们没有被“跳过”,它们不会导致错误,什么都没有。我已经打开了详细信息,可以看到 Ansible 从同一个文件中的任务处理其他模块,但不是我的新模块,就像它甚至不在文件中一样(是的,我已经验证我正在修改正确的通过更改文件中的其他任务并观察我的更改来创建文件)。
为了检查我的理智,我在文件中添加了“调试”任务,它们也被默默地忽略,就像它们不在文件中一样。
我很确定模块正在库文件夹中“被发现”,如果我将任务中的模块名称更改为与真实模块名称不同,我会收到错误消息。
我很确定该模块工作正常,它又小又简单,我已经使用 Ansible 的测试模块对其进行了测试;我已经成功地写了其他人喜欢它。它只是没有被使用。
完全没有输出(好坏),包括无法执行调试任务,导致调试困难,
我在想,几年前我在我常用的 ansible.cfg 文件中设置了一些我缺少的配置(在此上下文中未使用)。我看过了,但没有什么明显的弹出。
关于如何进行的任何建议?
为什么调试任务会被静默忽略(是的,我使用了详细设置)?
Ansible 版本 2.2.2.0-rc1 6791061
谢谢, 丹
【问题讨论】:
-
没有任何代码很难帮助你...你可以通过
--list-tasks检查你的剧本,并确保你不会通过设置标签来跳过你的任务。