community.network.opx_cps – CPS operations on networking device running Openswitch (OPX)
Note
This plugin is part of the community.network collection (version 3.0.0).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.network
.
To use it in a playbook, specify: community.network.opx_cps
.
Synopsis
- Executes the given operation on the YANG object, using CPS API in the networking device running OpenSwitch (OPX). It uses the YANG models provided in https://github.com/open-switch/opx-base-model.
Requirements
The below requirements are needed on the host that executes this module.
- cps
- cps_object
- cps_utils
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
attr_data string | Attribute Yang path and their corresponding data. | |
attr_type string | Attribute Yang type. | |
commit_event boolean |
| Attempts to force the auto-commit event to the specified yang object. |
db boolean |
| Queries/Writes the specified yang path from/to the db. |
module_name string | Yang path to be configured. | |
operation string |
| Operation to be performed on the object. |
qualifier string |
| A qualifier provides the type of object data to retrieve or act on. |
Examples
- 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"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
commit_event boolean | when commit_event is set to True in module options | Denotes if auto-commit event is set Sample: True |
cps_curr_config dictionary | when CPS operations set, delete | Returns the CPS Get output i.e. the running configuration before CPS operation of set/delete is performed Sample: [{'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 boolean | when db is set to True in module options | Denotes if CPS DB transaction was performed Sample: True |
diff dictionary | when CPS operations set, delete | The actual configuration that will be pushed comparing the running configuration and input attributes Sample: {'cps/key_data': {'if/interfaces/interface/name': 'br230'}, 'dell-if/if/interfaces/interface/untagged-ports': ['e101-007-0']} |
response list / elements=string | when a CPS transaction is successfully performed. | Output from the CPS transaction. Output of CPS Get operation if CPS set/create/delete not done. Sample: [{'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'}] |
Authors
- 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/latest/collections/community/network/opx_cps_module.html