ansible是否支持与puppet类似的原型任务?
就像,在木偶中,我可以做这样的事情:
File {
notify => Service['httpd'],
}
file { '/etc/httpd/conf/httpd.conf':
source => "puppet:///modules/httpd/httpd.conf",
}
...其中每个文件声明都将具有初始File块的notify属性,除非后续声明覆盖它。
ansible中是否有功能等同物?我在想这样的事情
---
- prototype: task prototype
notify:
- command: "apachectl graceful"
- name: install a configuration
copy: src=/opt/ansible/httpd/conf/httpd.conf dest=/etc/httpd/conf/httpd.conf
"""something puts my notify here without me having to write it"""
对于一个文件声明显然不是很有用,但如果你有20个非常有用。
答案 0 :(得分:0)
不,Ansible没有那样的。
虽然可能可以通过创建action plugin和callback plugin来实现。动作插件将是prototype
声明。回调插件可以在任何Ansible动作之后触发,例如任务成功完成时。
我唯一不确定的是,如果您可以在回调插件处理程序中触发远程操作甚至通知。