我希望通过 POST 请求触发 Ansible Playbook。
例如,我想让 Ansible 监听某个端口,以便它可以拦截 POST 请求、解析 JSON 并将值注入具有相同键名的变量中。
到目前为止,我看到 Ansible 可以使用 REST API,但不能充当端点。
这可能吗?如果不可能,任何替代建议都将不胜感激
答案1
我想让 Ansible 监听某个端口,以便它可以拦截 POST 请求
您不能让 Ansible 监听某个端口(而是“拦截”),因为 Ansible(称为ansible
)ansible-playbook
只是一个用户可执行的 Python 脚本。
编写一个监听指定端口的服务组件并ansible-playbook
从中执行命令。
解析 JSON,并将值注入具有相同键名的变量中。
您可以将 JSON 对象作为变量(字典)直接传递ansible-playbook
给命令作为参数。