Ansible ad-hoc команда фильтра вывода JSON по ключу или свойству

Я хотел бы отфильтровать вывод JSON для специальных команд ANSIBLE - например, захватить длинный списокфакты"для нескольких хостов и показывать только один, который может иметь глубину в несколько уровней, напримерansible_lsb.descriptionтак что я могу быстро сравнить, какие версии программного обеспечения они используют, проверить точное время или часовой пояс, что угодно.

Это работает:

ansible myserver -m setup -a 'filter=ansible_lsb'
myserver | SUCCESS => {
    "ansible_facts": {
        "ansible_lsb": {
            "codename": "wheezy",
            "description": "Debian GNU/Linux 7.11 (wheezy)",
            "id": "Debian",
            "major_release": "7",
            "release": "7.11"
        }
    },
    "changed": false
}

Тем не менее, какмодуль настройки документов состояние, "опция фильтра фильтрует только подраздел первого уровня ниже ansible_facts", так что это терпит неудачу:

ansible myserver -m setup -a 'filter=ansible_lsb.description'
myserver | SUCCESS => {
    "ansible_facts": {},
    "changed": false
}

(хотя для справки, вы можете использовать точечные обозначения в других местах, таких как задачикогда условно)

Есть ли способ отфильтровать ключи JSON перед отображением вывода?

Ответы на вопрос(1)

Ваш ответ на вопрос