Skip to main content

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)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for rcvpapi, version 1.6.4
Filename, size File type Python version Upload date Hashes
Filename, size rcvpapi-1.6.4-py2.py3-none-any.whl (22.6 kB) File type Wheel Python version py2.py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page