【发布时间】:2023-04-06 23:00:01
【问题描述】:
考虑以下(为简洁起见而简化)带有块和救援块的剧本
- name: deploy block
block:
- name: debug meta
debug: var=meta
- name: create/update configmap with new data
k8s:
state: present
namespace: "{{ namespace }}"
definition: "{{ lookup('template', 'configmap.tpl.yml') }}"
kind: ConfigMap
notify:
- successfull_deployment_slack_handler
rescue:
- name: Something went wrong handler
debug:
msg: "Something has failed in the playbook"
notify: failure_deployment_slack_handler
- meta: flush_handlers
在快乐的路径中测试它可以正常工作并按预期调用处理程序。
但是,当我在测试中的任务失败时,我确实看到了预期的调试消息,但没有调用实际的处理程序(我已将其换成调试消息进行验证)。
是的,我已经尝试添加meta: flush_handlers。
我怎样才能做到这一点?
Ansible 版本:2.9.9
【问题讨论】: