Skip to content
This repository has been archived by the owner on Jun 12, 2023. It is now read-only.

This repository has Arista CloudVision automation examples

License

Notifications You must be signed in to change notification settings

ksator/arista-cloudvision-automation

Repository files navigation

License CI

Table of Contents

About this repository

This repository has CloudVision automation examples

  • GO: How to install GO which is a requirement to install some tools
    • gRPCurl
    • gnmi
  • Token based authentication: How to configure token based authentication which is a requirement in order to use CVP APIs
  • REST APIs: How to use REST APIs with
    • cURL
    • Wget
    • Python with the module requests
  • OpenAPI: How to use the OpenAPI file that describe the CVP REST APIs with
    • Postman
    • Online swagger editor
  • Resource APIs: How to use resources API with
    • cURL
    • Python with the module
      • requests
      • cvprac
    • gRPCurl
    • Postman
  • cvprac: How to use the Python module cvprac
  • Certificate based authentication: How to configure certificate based authentication (for the devices and CVP communication) which is a requirement for the devices to stream OpenConfig data to CVP
  • YANG: How to generate paths and trees from YANG modules with
    • gNMIc
    • Pyang
  • OpenConfig: How to configure the devices to stream OpenConfig data to CVP
  • gNMI: How to use gNMI with
    • The gNMI command line client
      • gNMIc
      • gnmi
      • pygnmicli
    • Python with the module pyGNMI
    • gRPCurl
    • Postman
  • RESTCONF: How to use RESTCONF with
    • cURL
    • Python with the module requests

About the tools used in this repository

  • cURL is a command-line tool for getting or sending data using URLs
  • Wget is a program that retrieves content from web servers
  • Postman can be used to explore and test REST APIs and gRPC services
  • Python with the following modules:
    • The requests library can be used for making HTTP requests in Python
    • The cvprac python library can be used to manage CVP. cvprac is written using CVP REST APIs an CVP resource APIs
    • The pyGNMI library is a gNMI client
  • gNMIc is a command-line gNMI client
  • gnmi is a command-line gNMI client
  • pygnmicli is a command-line gNMI client
  • pyang can be used to generate a tree representation of YANG models for quick visualization
  • gRPCurl is a command-line tool that lets you interact with gRPC servers. It's basically curl for gRPC servers

Requirements

CVP version

All examples in this repository have been tested with CVP version 2022.1.0.

Credits

Thank you to Angélique Phillipps, Khelil Sator, Matthieu Tache and Tamas Plugor for their contributions and guidances.