community.network.edgeos_command – Выполнение одной или нескольких команд на устройствах EdgeOS
Примечание
Этот плагин входит в состав коллекции community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network
Чтобы использовать его в книге задач, укажите: community.network.edgeos_command
Обзор
- Этот модуль команд позволяет выполнять одну или несколько команд на удаленном устройстве с EdgeOS, таком как Ubiquiti EdgeRouter.
- Этот модуль не поддерживает выполнение команд в режиме конфигурации.
- Некоторые
showкоманды в EdgeOS производят большое количество строк вывода и используют пользовательскую страницу, что может привести к зависанию этого модуля. Если переменная средыANSIBLE_EDGEOS_TERMINAL_LENGTHне установлена, используется значение по умолчанию 10000. - Это сетевой модуль и для его корректной работы требуется
connection: network_cli - Для получения дополнительной информации обратитесь к Руководству по сети.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| commands строка / обязательный | Команды или упорядоченный набор команд, которые должны быть выполнены на удаленном устройстве. Результат выполнения команды возвращается книге задач. Если указан аргумент wait_for, модуль не возвращается, пока не будет выполнено условие или не будет превышено количество попыток. | |
| interval строка | Значение по умолчанию: 1 | Количество секунд, которое необходимо подождать между retries команды. |
| match строка |
| Используется совместно с wait_for для создания политики соответствия. Если установлено значение all, все условия в wait_for должны быть выполнены. Если установлено значение any, должно соответствовать хотя бы одно условие. |
| retries строка | Значение по умолчанию: 10 | Количество попыток выполнения команды перед тем, как она будет считаться неудачной. Команда выполняется на целевом устройстве и оценивается по условиям wait_for |
| wait_for строка | Принуждает задачу ожидать выполнения определенного условия перед продолжением. Если условие не выполняется до того, как будет превышено указанное количество попыток, задача завершится с ошибкой. |
Примечания
Примечание
- Проверено на EdgeOS 1.9.7
- Выполнение
show system boot-messages allприведет к зависанию модуля, так как EdgeOS использует пользовательское значение отображения вывода этой команды.
Примеры
tasks:
- name: Reboot the device
community.network.edgeos_command:
commands: reboot now
- name: Show the configuration for eth0 and eth1
community.network.edgeos_command:
commands: show interfaces ethernet {{ item }}
loop:
- eth0
- eth1
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| stdout список / элементы=строка | всегда, кроме ошибок низкого уровня (таких как плагин действия) | Набор ответов от команд Пример: ['...', '...'] |
| stdout_lines список / элементы=строка | всегда | Значение stdout разбито на список Пример: [['...', '...'], ['...'], ['...']] |
Авторы
- Chad Norgan (@beardymcbeards)
- Sam Doran (@samdoran)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/edgeos_command_module.html