Фильтр community.general.jc — преобразование вывода многих команд оболочки и типов файлов в JSON
Примечание
Этот плагин фильтра входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для использования этого плагина фильтра могут потребоваться дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.jc.
Добавлено в community.general 1.1.0
- Краткое описание
- Требования
- Входные данные
- Позиционные параметры
- Именованные параметры
- Примечания
- Примеры
- Возвращаемое значение
Краткое описание
- Преобразует вывод многих команд оболочки и типов файлов в JSON.
- Использует библиотеку jc.
Требования
Следующие требования необходимо выполнить на локальном управляющем узле, который запускает этот фильтр.
- jc установлен как библиотека Python (https://pypi.org/project/jc/)
Входные данные
Здесь описываются входные данные фильтра — значение перед | community.general.jc.
Параметр | Комментарии |
|---|---|
Input string / обязательный | Данные для преобразования. |
Позиционные параметры
Здесь описываются позиционные параметры фильтра. В следующем примере это значения positional1, positional2 и так далее: input | community.general.jc(positional1, positional2, ...)
Параметр | Комментарии |
|---|---|
parser string / обязательный | Подходящий парсер для входных данных. Например, Примечание: в названии модуля парсера используйте символы подчёркивания вместо дефисов (если они есть). Актуальный список парсеров см. на странице https://github.com/kellyjonbrazil/jc#parsers. |
Именованные параметры
Здесь описываются именованные параметры фильтра. В следующем примере это значения key1=value1, key2=value2 и так далее: input | community.general.jc(key1=value1, key2=value2, ...)
Параметр | Комментарии |
|---|---|
quiet boolean | Установите значение Варианты:
|
raw boolean | Установите значение Варианты:
|
Примечания
Примечание
- При совместном использовании именованных и позиционных параметров позиционные параметры необходимо указывать перед именованными:
input | community.general.jc(positional1, positional2, key1=value1, key2=value2)
Примеры
- name: Install the prereqs of the jc filter (jc Python package) on the Ansible controller
delegate_to: localhost
ansible.builtin.pip:
name: jc
state: present
- name: Run command
ansible.builtin.command: uname -a
register: result
- name: Convert command's result to JSON
ansible.builtin.debug:
msg: "{{ result.stdout | community.general.jc('uname') }}"
# Possible output:
#
# "msg": {
# "hardware_platform": "x86_64",
# "kernel_name": "Linux",
# "kernel_release": "4.15.0-112-generic",
# "kernel_version": "#113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020",
# "machine": "x86_64",
# "node_name": "kbrazil-ubuntu",
# "operating_system": "GNU/Linux",
# "processor": "x86_64"
# }
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение any | Обработанный вывод. Возвращается: при успешном выполнении |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/jc_filter.html