...
The Modeling/etsicatalog project provides package management service by Micro Service. It can be used to store packages distributed by the SDC, which then can be consumed by other projects or components, such as UUI, VF-C, etc. It also includes a TOSCA parser service which provides generic parser service.
...
Architecture
Build and Install
Etsicatalog is a standalone web application based on python3 and Django framework.
Locally
Pre-requisites:
- Python3 & pip
- MySQL 5.7
Clone repository:
$ git clone https://gerrit.onap.org/r/modeling/etsicatalog
$ cd etsicatalog
Install dependencies:
$ pip3 install -r requirements.txt
Create database:
$ cd /resources/dbscripts/mysql
Run modeling-etsicatalog-createdb.sql to create database.
Run commands followed to init database:
$ python manage.py makemigrations
$ python manage.py makemigrations database
$ python manage.py migrate
$ python manage.py migrate database
Review and edit \catalog\pub\config\config.py
MySQL default configuration is as follows:
...
DB_IP = "127.0.0.1"
DB_PORT = 3306
DB_NAME = "etsicatalog"
DB_USER = "etsicatalog"
DB_PASSWD = "etsicatalog"
Start server:
$ python manage.py runserver 8806
Test:
Run Healthcheck: http://127.0.0.1:8806/api/catalog/v1/health_check
You should get:
...
View API document:
http://127.0.0.1:8806/api/catalog/v1/swagger
Docker
Requirements
- Docker
- Docker-compose
Offered APIs
Modeling/esticatalog provides the followed interfaces:
...
Interface Name
...
Interface Definition
...
Interface Capabilities
...
Provides catalog management interface:
- fetch VNF package from SDC
- fetch NS package from SDC
- fetch Service package from SDC
- search VNF/NS/Service
...
Provides NSD management interface (Align with ETSI SOL-005)
- Create NSD Info
- Upload NSD
- Query NSD Info
- Fetch NSD
- Delete NSD
- Create PNFD Info
- Upload PNFD
- Query PNFD Info
- Fetch PNFD
- Delete PNFD
- Subscribe & Notify
...
Provides VNF management interface (Align with ETSI SOL-003)
- Create VNF Package Info
- Upload VNF Package
- QueryVNF Package Info, include obtaining the VNFD
- Fetch VNF Package
- Fetch VNF Package Artifacts
- Delete VNF Package
- Subscribe & Notify
...
Provides Parse interface:
- Parse VNF
- Parse PNF
- Parse NS
- Parse Service
Please see the REST API document as follows.
Consumed APIs
Modeling/esticatalog consumes the followed interfaces:
...
Interface Name
...
Interface Definition
...
Interface Capabilities
...
An interface to receive resource Templates from SDC design catalog
- Get List of Existing Catalog Assets per Type
https://{serverRoot}/sdc/v1/catalog/{assetType}
- Get Specific Asset Detailed Metadata
https://{serverRoot}/sdc/v1/catalog/{assetType}/{uuid}/metadata
- Download (CSAR of) Specific Asset
https://{serverRoot}/sdc/v1/catalog/{assetType}/{uuid}/toscaModel
...