Python MANO Wrappers (PMW) is a uniform python wrapper for various implementations of NFV Management and Network Orchestration (MANO) REST APIs. This project is developed as part of the project group SCrAMbLE at the University of Paderborn for the 5G-PICTURE project GitHub.
PMW is easy to use and well documented. Code usage examples are available along with the function documentation.
PMW can be installed using pip:
pip install python-mano-wrappers
Documentation is available here - ReadtheDocs.
-
adaptor.py
- Entry point for utilizing the underlying wrappers -
wrappers
- Contains REST wrappers for MANO frameworksCommonInterfaces
- Starting point Python Module for implementation that defines an abstract base class according to the ETSI standardOSMClient
- REST wrapper for OpenSource Mano basedSONATAClient
- REST wrapper for Sonata based
-
tests
- Contains test cases for individual wrappers -
samples
- Contains sample files needed for testing
-
Build and run docker from root folder
docker-compose -f "docker-compose.dev.yml" up -d --build
-
Once the containers are running, docker attach to the adaptor image to get terminal access
- Run
docker ps
and copy the container id for src_adaptor image (ex. 1ffb536c1a8e) - Run
docker exec -it pwm-wrapper bash
to get terminal access
- Run
-
Run test cases from the container
cd /src
- Run
py.test
to execute all test cases - Run
clear && py.test -s tests/osm/test_auth.py
to run all test cases in a file, in this case osm - test_auth.py - Run
clear && py.test -s tests/osm/test_auth.py::test_auth
to run one specific test case in a file, in this case osm - test_auth