From 32409110b65b013bc65930f3cfdef09671cd3a5a Mon Sep 17 00:00:00 2001 From: "stark, steven" Date: Mon, 3 Aug 2020 13:03:24 -0700 Subject: [VVP] ONAP Client enhancements Output hooks for resources. Outputs for each resource are returned as part of the complete onap-client spec when a resource is created. Hooks have been added for the SDC resources, to return the TOSCA model for each created resource. Dynamic config change. Ability to specify and reconfigure the onap-client configuration file at runtime without restarting the current session. Logging. Logging has been upgraded to create its own logging instance rather than the root logging instance, to avoid collisions. Issue-ID: VVP-455 Signed-off-by: stark, steven Change-Id: I7b03411d221801fc51b80ee6a73d9491e823da56 --- .../onap_client/sdnc/catalog/config_catalog.py | 119 ++++++++++----------- .../onap_client/sdnc/catalog/operations_catalog.py | 85 +++++++-------- 2 files changed, 97 insertions(+), 107 deletions(-) (limited to 'onap-client/onap_client/sdnc/catalog') diff --git a/onap-client/onap_client/sdnc/catalog/config_catalog.py b/onap-client/onap_client/sdnc/catalog/config_catalog.py index da3c1cf..18854e8 100644 --- a/onap-client/onap_client/sdnc/catalog/config_catalog.py +++ b/onap-client/onap_client/sdnc/catalog/config_catalog.py @@ -38,77 +38,72 @@ import uuid from functools import partial -from onap_client import sdnc from onap_client import config from onap_client.sdnc.client import SDNCClient PAYLOADS_DIR = config.PAYLOADS_DIR -sdnc_properties = sdnc.SDNC_PROPERTIES application_id = config.APPLICATION_ID class ConfigClient(SDNCClient): - @property - def catalog_resources(self): - return CATALOG_RESOURCES - @property def namespace(self): return "config" - -CATALOG_RESOURCES = { - "GET_SERVICE_INSTANCES": { - "verb": "GET", - "description": "Get a list of all service instances", - "uri": partial( - "{endpoint}{service_path}/GENERIC-RESOURCE-API:services".format, - endpoint=sdnc_properties.SDNC_ENDPOINT, - service_path=sdnc_properties.SDNC_CONFIG_PATH, - ), - "success_code": 200, - "headers": { - "Accept": "application/json", - "Content-Type": "application/json", - "X-TransactionId": str(uuid.uuid4()), - "X-FromAppId": application_id, - }, - "auth": (sdnc_properties.SDNC_USERNAME, sdnc_properties.SDNC_PASSWORD,), - }, - "GET_SERVICE_INSTANCE": { - "verb": "GET", - "description": "Get details for a service instance", - "uri": partial( - "{endpoint}{service_path}/GENERIC-RESOURCE-API:services/service/{service_instance_id}".format, - endpoint=sdnc_properties.SDNC_ENDPOINT, - service_path=sdnc_properties.SDNC_CONFIG_PATH, - ), - "uri-parameters": ["service_instance_id"], - "success_code": 200, - "headers": { - "Accept": "application/json", - "Content-Type": "application/json", - "X-TransactionId": str(uuid.uuid4()), - "X-FromAppId": application_id, - }, - "auth": (sdnc_properties.SDNC_USERNAME, sdnc_properties.SDNC_PASSWORD,), - }, - "GET_VNF_INSTANCE": { - "verb": "GET", - "description": "Get details for a vnf instance", - "uri": partial( - "{endpoint}{service_path}/GENERIC-RESOURCE-API:services/service/{service_instance_id}/service-data/vnfs/vnf/{vnf_instance_id}".format, - endpoint=sdnc_properties.SDNC_ENDPOINT, - service_path=sdnc_properties.SDNC_CONFIG_PATH, - ), - "uri-parameters": ["service_instance_id", "vnf_instance_id"], - "success_code": 200, - "headers": { - "Accept": "application/json", - "Content-Type": "application/json", - "X-TransactionId": str(uuid.uuid4()), - "X-FromAppId": application_id, - }, - "auth": (sdnc_properties.SDNC_USERNAME, sdnc_properties.SDNC_PASSWORD,), - }, -} + @property + def catalog_resources(self): + return { + "GET_SERVICE_INSTANCES": { + "verb": "GET", + "description": "Get a list of all service instances", + "uri": partial( + "{endpoint}{service_path}/GENERIC-RESOURCE-API:services".format, + endpoint=self.config.sdnc.SDNC_ENDPOINT, + service_path=self.config.sdnc.SDNC_CONFIG_PATH, + ), + "success_code": 200, + "headers": { + "Accept": "application/json", + "Content-Type": "application/json", + "X-TransactionId": str(uuid.uuid4()), + "X-FromAppId": application_id, + }, + "auth": (self.config.sdnc.SDNC_USERNAME, self.config.sdnc.SDNC_PASSWORD,), + }, + "GET_SERVICE_INSTANCE": { + "verb": "GET", + "description": "Get details for a service instance", + "uri": partial( + "{endpoint}{service_path}/GENERIC-RESOURCE-API:services/service/{service_instance_id}".format, + endpoint=self.config.sdnc.SDNC_ENDPOINT, + service_path=self.config.sdnc.SDNC_CONFIG_PATH, + ), + "uri-parameters": ["service_instance_id"], + "success_code": 200, + "headers": { + "Accept": "application/json", + "Content-Type": "application/json", + "X-TransactionId": str(uuid.uuid4()), + "X-FromAppId": application_id, + }, + "auth": (self.config.sdnc.SDNC_USERNAME, self.config.sdnc.SDNC_PASSWORD,), + }, + "GET_VNF_INSTANCE": { + "verb": "GET", + "description": "Get details for a vnf instance", + "uri": partial( + "{endpoint}{service_path}/GENERIC-RESOURCE-API:services/service/{service_instance_id}/service-data/vnfs/vnf/{vnf_instance_id}".format, + endpoint=self.config.sdnc.SDNC_ENDPOINT, + service_path=self.config.sdnc.SDNC_CONFIG_PATH, + ), + "uri-parameters": ["service_instance_id", "vnf_instance_id"], + "success_code": 200, + "headers": { + "Accept": "application/json", + "Content-Type": "application/json", + "X-TransactionId": str(uuid.uuid4()), + "X-FromAppId": application_id, + }, + "auth": (self.config.sdnc.SDNC_USERNAME, self.config.sdnc.SDNC_PASSWORD,), + }, + } diff --git a/onap-client/onap_client/sdnc/catalog/operations_catalog.py b/onap-client/onap_client/sdnc/catalog/operations_catalog.py index 12db3a3..2d9662b 100644 --- a/onap-client/onap_client/sdnc/catalog/operations_catalog.py +++ b/onap-client/onap_client/sdnc/catalog/operations_catalog.py @@ -38,60 +38,55 @@ import uuid from functools import partial -from onap_client import sdnc from onap_client import config from onap_client.sdnc.client import SDNCClient PAYLOADS_DIR = config.PAYLOADS_DIR -sdnc_properties = sdnc.SDNC_PROPERTIES application_id = config.APPLICATION_ID class OperationsClient(SDNCClient): - @property - def catalog_resources(self): - return CATALOG_RESOURCES - @property def namespace(self): return "operations" - -CATALOG_RESOURCES = { - "GR_API_PRELOAD": { - "verb": "POST", - "description": "Upload a GR API preload to SDNC", - "uri": partial( - "{endpoint}{service_path}/GENERIC-RESOURCE-API:preload-vf-module-topology-operation".format, - endpoint=sdnc_properties.SDNC_ENDPOINT, - service_path=sdnc_properties.SDNC_OPERATIONS_PATH, - ), - "payload-path": ["preload_path"], - "success_code": 200, - "headers": { - "Accept": "application/json", - "Content-Type": "application/json", - "X-TransactionId": str(uuid.uuid4()), - "X-FromAppId": application_id, - }, - "auth": (sdnc_properties.SDNC_USERNAME, sdnc_properties.SDNC_PASSWORD,), - }, - "VNF_API_PRELOAD": { - "verb": "POST", - "description": "Upload a VNF API preload to SDNC", - "uri": partial( - "{endpoint}{service_path}/VNF-API:preload-vnf-topology-operation".format, - endpoint=sdnc_properties.SDNC_ENDPOINT, - service_path=sdnc_properties.SDNC_OPERATIONS_PATH, - ), - "payload-path": ["preload_path"], - "success_code": 200, - "headers": { - "Accept": "application/json", - "Content-Type": "application/json", - "X-TransactionId": str(uuid.uuid4()), - "X-FromAppId": application_id, - }, - "auth": (sdnc_properties.SDNC_USERNAME, sdnc_properties.SDNC_PASSWORD,), - }, -} + @property + def catalog_resources(self): + return { + "GR_API_PRELOAD": { + "verb": "POST", + "description": "Upload a GR API preload to SDNC", + "uri": partial( + "{endpoint}{service_path}/GENERIC-RESOURCE-API:preload-vf-module-topology-operation".format, + endpoint=self.config.sdnc.SDNC_ENDPOINT, + service_path=self.config.sdnc.SDNC_OPERATIONS_PATH, + ), + "payload-path": ["preload_path"], + "success_code": 200, + "headers": { + "Accept": "application/json", + "Content-Type": "application/json", + "X-TransactionId": str(uuid.uuid4()), + "X-FromAppId": application_id, + }, + "auth": (self.config.sdnc.SDNC_USERNAME, self.config.sdnc.SDNC_PASSWORD,), + }, + "VNF_API_PRELOAD": { + "verb": "POST", + "description": "Upload a VNF API preload to SDNC", + "uri": partial( + "{endpoint}{service_path}/VNF-API:preload-vnf-topology-operation".format, + endpoint=self.config.sdnc.SDNC_ENDPOINT, + service_path=self.config.sdnc.SDNC_OPERATIONS_PATH, + ), + "payload-path": ["preload_path"], + "success_code": 200, + "headers": { + "Accept": "application/json", + "Content-Type": "application/json", + "X-TransactionId": str(uuid.uuid4()), + "X-FromAppId": application_id, + }, + "auth": (self.config.sdnc.SDNC_USERNAME, self.config.sdnc.SDNC_PASSWORD,), + }, + } -- cgit 1.2.3-korg