主要观点:在之前文章探索了 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) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。