开发ansible调用另一个模块

时间:2016-10-19 05:38:08

标签: ansible

我正在为编译源开发一个Ansible模块,比如

- source_compile: archive: /var/cache/sources/nginx.tar.gz configure: prefix: /usr

我可能会

  1. 检查源包。 (如果是网址下载)
  2. 制作一个独特的构建目录。
  3. 取消归档源构建目录。
  4. 配置&&制造&& make install
  5. 所以我想使用ansible核心模块get_url和unarchive和shell,但是没有找到。

1 个答案:

答案 0 :(得分:2)

您只能从动作插件执行其他模块,而不能从模块本身执行 它是使用_execute_module辅助函数完成的。例如,请参阅template操作。

此外,您可能有兴趣使用其他帮助函数(如fetch_url)来检索远程数据,使用_low_level_execute_command来运行shell命令而不是调用其他模块。

我建议检查Ansible核心模块/操作源代码,以了解工作原理。