Module to interact with Arista CloudVision
Project description
CloudVision API (rCVP API)
This is a custom CVP API wrapper. This module works using Python2 and Python3.
Support
NOTE Always test on lab deployments before working on a production environment. Espeically between different releases of CVP and rCVP API.
This has been tested on CVP versions:
- 2018.2.X
- 2019.1.X
- 2020.1.X
Usage
NOTE The documentation below is incomplete and a work in progress. This module has more functionality than what is documented. With the right supplemental data and steps, it can configure CVP from nothing to functioning.
Install using the Python Package Index
pip install rcvpapi
or
pip3 install rcvpapi
Initial Setup and Usage
from rcvpapi.rcvpapi import *
# Create connection to CloudVision
cvp_cnt = CVPCON(cvp_ip,cvp_user,cvp_user_pwd)
# Check current CloudVision sessionId/Cookie
cvp_cnt.SID
# Get the current CVP Version
cvp_cnt.version
# Logout/End session
cvp_cnt.execLogout()
# Save topology
cvp_cnt.saveTopology()
Devices/Inventory
# Get all provisioned devices
cur_inv = cvp_cnt.getDeviceInventory()
# Adds new devices to inventory/provisioning
cvp_cnt.addDeviceInventory(['10.0.0.1','10.0.0.2'])
Tasks
# Get a list of any Task type
cur_tasks = cvp_cnt.getAllTasks("Pending")
# Get a list of the last 25 Tasks of any type
recent_tasks = cvp_cnt.getRecentTasks(25)
# Execute all tasks
cvp_cnt.execAllTasks("Pending")
# Get status of a task
tsk_stat = cvp_cnt.getTaskStatus(task_id)
Configlets
# Import static configlet
cvp_cnt.impConfiglet("static",configlet_name,configlet_data)
# Import configlet builder
cvp_cnt.impCofniglet("builder",configlet_name,configlet_data,configlet_form_data)
# Get all Configlets
exist_configlets = cvp_cnt.getConfiglets()
# Get a Configlet by Name
ex_cfg = cvp_cnt.getConfigletByName("Base_Authentication")
Snapshots
# Get all configured snapshots
cvp_cnt.snapshots
# Add a new snapshot
# Parameters:
# snap_name = Name of the snapshot (required)
# snap_cmds = Array of all commands to be included in snapshot (required)
# snap_devices = Array of any devices to be included on the snapshot (optional)
cvp_cnt.createSnapshot(snap_name,snap_cmds,snap_devices)
Containers
# Get all containers
ex_cont = cvp_cnt.getAllContainers()
# Add a new container
cvp_cnt.addContainer(new_cont_name,parent_cont_name)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file rcvpapi-1.6.4-py2.py3-none-any.whl
.
File metadata
- Download URL: rcvpapi-1.6.4-py2.py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bc169a77a5ca4bfc45f96cd2c7e73b5d273feccb5866a5dfdb946de469fdd7f |
|
MD5 | 20c024fb3f7d9597dda087782130f61d |
|
BLAKE2b-256 | 483c02b3e69a287831288bfccdfdd6242bd2f2d8cf8c45382c23bd726e9ddd75 |