获取Ansible-Playbook运行信息 [英] Get ansible-playbook run information

查看:166
本文介绍了获取Ansible-Playbook运行信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果一切正常,或者某些任务进行了某些更改,则ansible-playbook运行将返回0.

An ansible-playbook run returns 0 if everything was ok or even if some tasks changed something.

我正在寻找一种方法,以便在上次运行期间发生更改时在命令行中获取信息.

I am searching for a way to get the information in the commandline if something changed during the last run.

有人知道这种方法吗?

背景是我想通过Jenkins管道监视我的服务器,并在发生更改时收到警报.

The background is that I want to monitor my servers via an Jenkins pipeline an get an alarm if something changed.

感谢您的帮助.

推荐答案

使用json作为Ansible stdout回调插件,这样Ansible将以JSON格式返回机器可分析的输出.

Use json as Ansible stdout callback plugin, this way Ansible will return machine parsable output in JSON format.

例如:

ANSIBLE_STDOUT_CALLBACK=json ansible-playbook myplaybook.yml | jq '.stats | map(select(.changed > 0)) | length'

将打印出发生变化的主机数量.

will print out number of hosts that have something changed.

这篇关于获取Ansible-Playbook运行信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆