You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Current »

Overview

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. 

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:

{"status":"active"}

 

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

etsicatalogAPIE-1Catalog API

Provides catalog management interface:

  • fetch VNF package from SDC
  • fetch NS package from SDC
  • fetch Service package from SDC
  • search VNF/NS/Service
etsicatalogAPIE-2NSD Management API

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
etsicatalogAPIE-3VNF Management API

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
etsicatalogAPIE-4Parser API

Provides Parse interface:

  • Parse VNF
  • Parse PNF
  • Parse NS
  • Parse Service

Please see the REST API document as follows.

etsicatalog_API_v1.yaml

Consumed APIs

Modeling/esticatalog consumes the followed interfaces:

Interface Name

Interface Definition

 Interface Capabilities

SDCE-6SDC Interface

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

MSBE-1Micro Service Bus InterfaceAn interface for registration and discovery with the ONAP Micro Service Bus.


  • No labels