Automating-Service-Provisioning-with-EPNM-API

This project has been developed to show the Northbound API capability of Cisco’s Evolved Network Programmable Manager (EPNM). EPNM has a good set of REST APIs and RESTConf APIs to achieve several tasks through third party interfaces (scripts, tools, etc.). This project focuses on bulk service provisioning task across the network using EPNM’s RESTConf API.

The primary platform we have chosen for this project is Cisco's NCS4200 IOS-XE platform for TDM service provisioning.

Later, we also have included EPL service provisioning with minimum required options as an additional example for Cisco IOS-XR routers (NCS5500 and NCS9K).

This has been done to provide a positive mindset to the users that the concept of the project can be utilized for various network platforms supported in EPNM.

Summarized Work-Flow:

Work Flow Image

User Guideline

For a detailed guideline, please read the user manual included in the UserDocument folder.
https://github.com/CiscoSE/Automating-Service-Provisioning-with-EPNM-API/tree/master/UserDocument

Enviroment Setup

For this project, Python3.7.6 has been used (also verified with verion 3.8.5). Please, follow the intructions given below to setup your environment.

For Ubuntu: https://developer.cisco.com/learning/lab/dev-ubuntu/step/1

For Windows: https://developer.cisco.com/learning/lab/dev-win/step/1

For Mac: https://developer.cisco.com/learning/lab/dev-mac/step/1

Usage

  1. Clone the project to your work station.

    git clone https://github.com/CiscoSE/Automating-Service-Provisioning-with-EPNM-API.git

  2. Install required dependencies.

    pip install -r requirements.txt

  3. Follow the user guideline to use the script.

Contributors

Tahsin Chowdhury tchowdhu@cisco.com

Rex Spell rspell@cisco.com

View code on GitHub

Code Exchange Community

Get help, share code, and collaborate with other developers in the Code Exchange community.View Community
Disclaimer:
Cisco provides Code Exchange for convenience and informational purposes only, with no support of any kind. This page contains information and links from third-party websites that are governed by their own separate terms. Reference to a project or contributor on this page does not imply any affiliation with or endorsement by Cisco.