community.network.opx_cps – Операции CPS на сетевом устройстве, работающем на Openswitch (OPX)
Примечание
Этот плагин входит в коллекцию community.network (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: community.network.opx_cps.
Обзор
- Выполняет заданную операцию над объектом YANG с использованием API CPS в сетевом устройстве, работающем на OpenSwitch (OPX). Использует модели YANG, предоставленные в https://github.com/open-switch/opx-base-model.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться данный модуль.
- cps
- cps_object
- cps_utils
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attr_data строка | Путь к атрибуту YANG и соответствующие данные. | |
| attr_type строка | Тип атрибута YANG. | |
| commit_event логическое |
| Попытка принудительно вызвать событие автоматического коммита для указанного объекта yang. |
| db логическое |
| Запрос/запись указанного пути yang из/в базу данных. |
| module_name строка | Путь к YANG-пути, который нужно настроить. | |
| operation строка |
| Операция, которая должна быть выполнена над объектом. |
| qualifier строка |
| Квалификатор задает тип данных объекта для извлечения или обработки. |
Примеры
- name: Create VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"base-if-vlan/if/interfaces/interface/id": 230,
"if/interfaces/interface/name": "br230",
"if/interfaces/interface/type": "ianaift:l2vlan"
}
operation: "create"
- name: Get VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"if/interfaces/interface/name": "br230",
}
operation: "get"
- name: Modify some attributes in VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"cps/key_data":
{ "if/interfaces/interface/name": "br230" },
"dell-if/if/interfaces/interface/untagged-ports": ["e101-008-0"],
}
operation: "set"
- name: Delete VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"if/interfaces/interface/name": "br230",
}
operation: "delete"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commit_event логическое | когда commit_event установлено в True в опциях модуля | Указывает, установлено ли событие автоматического коммита. Пример: True |
| cps_curr_config словарь | при установке, удалении CPS операций | Возвращает вывод CPS Get, т.е. текущую конфигурацию перед выполнением операции CPS set/delete. Пример: [{'data': {'base-if-vlan/if/interfaces/interface/id': 230, 'cps/key_data': {'if/interfaces/interface/name': 'br230'}, 'dell-base-if-cmn/if/interfaces/interface/if-index': 44, 'dell-if/if/interfaces/interface/learning-mode': 1, 'dell-if/if/interfaces/interface/mtu': 1532, 'dell-if/if/interfaces/interface/phys-address': '', 'dell-if/if/interfaces/interface/vlan-type': 1, 'if/interfaces/interface/enabled': 0, 'if/interfaces/interface/type': 'ianaift:l2vlan'}, 'key': 'target/dell-base-if-cmn/if/interfaces/interface'}] |
| db логическое | когда db установлено в True в опциях модуля | Указывает, была ли выполнена транзакция CPS DB. Пример: True |
| diff словарь | при установке, удалении CPS операций | Фактическая конфигурация, которая будет применена, сравнивая текущую конфигурацию и входные атрибуты. Пример: {'cps/key_data': {'if/interfaces/interface/name': 'br230'}, 'dell-if/if/interfaces/interface/untagged-ports': ['e101-007-0']} |
| response список / элементы=строка | при успешном выполнении транзакции CPS. | Вывод из транзакции CPS. Вывод операции CPS Get, если CPS set/create/delete не выполнены. Пример: [{'data': {'base-if-vlan/if/interfaces/interface/id': 230, 'cps/object-group/return-code': 0, 'dell-base-if-cmn/if/interfaces/interface/if-index': 46, 'if/interfaces/interface/name': 'br230', 'if/interfaces/interface/type': 'ianaift:l2vlan'}, 'key': 'target/dell-base-if-cmn/if/interfaces/interface'}] |
Авторы
- Senthil Kumar Ganesan (@skg-net)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/opx_cps_module.html