Python 是否可以从ansible模块中对处理程序进行排队?

Python 是否可以从ansible模块中对处理程序进行排队?,python,ansible,ansible-playbook,Python,Ansible,Ansible Playbook,我正在角色内部开发一个ansible模块(即该模块位于角色的库目录中)。我想知道是否可以从模块中对处理程序进行排队? 下面是一个我想做的示例,但没有在任务中使用notify位 - name: build and install my application custom_module: path=/opt/web_app notify: - restart web server 理想情况下,我希望将自定义_模块以某种方式排队给处理程序,以便使用情况如下所示: - nam

我正在角色内部开发一个ansible模块(即该模块位于角色的
目录中)。我想知道是否可以从模块中对处理程序进行排队?

下面是一个我想做的示例,但没有在任务中使用
notify

- name: build and install my application
  custom_module:
    path=/opt/web_app
  notify:
    - restart web server
理想情况下,我希望将
自定义_模块
以某种方式排队给处理程序,以便使用情况如下所示:

- name: build and install my application
  custom_module:
    path=/opt/web_app

我很确定这类事情是不可能的。实际上,模块是独立的应用程序,它可以复制到远程主机,使用提供的参数执行,然后在继续下一个模块之前解释退出值和输出。当一个模块在远程主机上运行时,它不知道主节点上运行的Ansible进程,因此它没有办法回接到它。在playbook中使用
notify
属性是调用处理程序的正确方法。你为什么想用其他方法来做这件事?

我想你是对的。我仍在试图找到一种实现动态播放的好方法,即构建一个应用程序并通知某个构建工具更新其信息(在本例中为“rbenv rehash”)。我认为让模块成为角色的一部分,将有助于处理模块依赖关系和可以在最后运行的常见处理程序任务。此外,我认为这将阻止使用此模块的所有任务执行样板依赖项任务以及通知行。