主要观点:在之前文章探索了 Ansible 事件驱动自动化(EDA)中不同事件源的使用,此 demo 聚焦于事件过滤器如何清理和简化事件数据以方便自动化管理,具体探讨ansible.eda.dashes_to_underscores
事件过滤器及其工作原理。
关键信息:
- 用 webhooks 等工具时事件常以含破折号的 JSON 数据形式出现,在 Ansible 中变量名含破折号不能直接使用,
dashes_to_underscores
过滤器可将破折号键转换为 Ansible 可处理的形式。 - 展示
ansible.eda.dashes_to_underscores
过滤器操作,通过发送含破折号键的 JSON 负载到port 9000
的webhook
,dashes_to_underscores
过滤器会自动转换键,使其符合 Ansible 变量命名要求。 - 给出
webhook.yml
和print-event-vars.yml
示例代码,以及触发webhook
的命令和查看事件的方式。
重要细节: webhook.yml
中设置了事件源为ansible.eda.webhook
并添加dashes_to_underscores
过滤器,以及规则判断。print-event-vars.yml
用于打印事件细节,可直接访问转换后的变量。- 触发
webhook
时使用curl
命令发送含特定键的 JSON 负载。
结论:ansible.eda.dashes_to_underscores
过滤器可清理 Ansible EDA 中的事件数据,将含破折号的键转换为含下划线的键,使自动化脚本更清晰减少错误,可与其他过滤器结合更好控制和格式化事件数据,能更顺畅处理不同类型事件数据。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。