cisco.mso.mso_rest – Direct access to the Cisco MSO REST API¶
Note
This plugin is part of the cisco.mso collection (version 1.1.0).
To install it use: ansible-galaxy collection install cisco.mso
.
To use it in a playbook, specify: cisco.mso.mso_rest
.
Synopsis¶
Enables the management of the Cisco MSO fabric through direct access to the Cisco MSO REST API.
This module is not idempotent and does not report changes.
Requirements¶
The below requirements are needed on the host that executes this module.
Multi Site Orchestrator v2.1 or newer
Parameters¶
Notes¶
Note
Most payloads are known not to be idempotent, so be careful when constructing payloads.
Please read the Cisco ACI Guide for more detailed information on how to manage your ACI infrastructure using Ansible.
This module was written to support ACI Multi Site Orchestrator v2.1 or newer. Some or all functionality may not work on earlier versions.
See Also¶
See also
- cisco.mso.mso_tenant
The official documentation on the cisco.mso.mso_tenant module.
Examples¶
- name: Add schema (JSON)
cisco.mso.mso_rest:
host: mso
username: admin
password: SomeSecretPassword
path: /mso/api/v1/schemas
method: post
content:
{
"displayName": "{{ mso_schema | default('ansible_test') }}",
"templates": [{
"name": "Template_1",
"tenantId": "{{ add_tenant.jsondata.id }}",
"displayName": "Template_1",
"templateSubType": [],
"templateType": "stretched-template",
"anps": [],
"contracts": [],
"vrfs": [],
"bds": [],
"filters": [],
"externalEpgs": [],
"serviceGraphs": [],
"intersiteL3outs": []
}],
"sites": [],
"_updateVersion": 0
}
delegate_to: localhost
- name: Query schema
cisco.mso.mso_rest:
host: mso
username: admin
password: SomeSecretPassword
path: /mso/api/v1/schemas
method: get
delegate_to: localhost
- name: Patch schema (YAML)
cisco.mso.mso_rest:
host: mso
username: admin
password: SomeSecretPassword
path: "/mso/api/v1/schemas/{{ add_schema.jsondata.id }}"
method: patch
content:
- op: add
path: /templates/Template_1/anps/-
value:
name: AP2
displayName: AP2
epgs: []
_updateVersion: 0
delegate_to: localhost
- name: Add a tenant from a templated payload file from templates
cisco.mso.mso_rest:
host: mso
username: admin
password: SomeSecretPassword
method: post
path: /api/v1/tenants
content: "{{ lookup('template', 'mso/tenant.json.j2') }}"
delegate_to: localhost
Authors¶
Anvitha Jain (@anvitha-jain)