aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartek Grzybowski <b.grzybowski@partner.samsung.com>2019-11-22 15:02:21 +0100
committerMorgan Richomme <morgan.richomme@orange.com>2019-12-06 10:22:10 +0000
commitba8a72f9ac68fbdf04f9470960fae496aa49fa71 (patch)
tree2a726c59d29a6d68fc29058d5e0d5c916bbe1702
parent62a4764febf13ad678593d4ff8fc52e430564cf1 (diff)
Insert vcpe customer service workflow into SO catalogdb
Customer service workflow entry will be automatically inserted into catalogdb database if running with oom_mode set to True. So database endpoint properties were updated to reflect current catalogdb location. vCPE doc updated to reflect the changes made. Change-Id: I54ef0bf94ccf2d38501c1b854cafe4d388a4b35d Signed-off-by: Bartek Grzybowski <b.grzybowski@partner.samsung.com> Issue-ID: TEST-205
-rw-r--r--docs/docs_vCPE.rst6
-rwxr-xr-xtest/vcpe/config_sdnc_so.py31
-rwxr-xr-xtest/vcpe/vcpe.py2
-rwxr-xr-xtest/vcpe/vcpecommon.py15
4 files changed, 28 insertions, 26 deletions
diff --git a/docs/docs_vCPE.rst b/docs/docs_vCPE.rst
index f3a2be13f..12320d9e5 100644
--- a/docs/docs_vCPE.rst
+++ b/docs/docs_vCPE.rst
@@ -77,11 +77,7 @@ Here are the main steps to run the use case in Integration lab environment, wher
vcpe.py init
-6. Run a command from Rancher node to insert vcpe customer service workflow entry in SO catalogdb. You should be able to see a sql command printed out from the above step output at the end, and use that sql command to replace the sample sql command below (inside the double quote) and run it from Rancher node:
-
-::
-
- kubectl exec dev-mariadb-galera-mariadb-galera-0 -- mysql -uroot -psecretpassword catalogdb -e "INSERT INTO service_recipe (ACTION, VERSION_STR, DESCRIPTION, ORCHESTRATION_URI, SERVICE_PARAM_XSD, RECIPE_TIMEOUT, SERVICE_TIMEOUT_INTERIM, CREATION_TIMESTAMP, SERVICE_MODEL_UUID) VALUES ('createInstance','1','vCPEResCust 2019-06-03 _04ba','/mso/async/services/CreateVcpeResCustService',NULL,181,NULL, NOW(),'6c4a469d-ca2c-4b02-8cf1-bd02e9c5a7ce')"
+6. If running with oom_mode=False run a command printed at the end of the above step from k8s control node to insert vcpe customer service workflow entry in SO catalogdb. It will be done automatically otherwise.
7. Run Robot to create and distribute for vCPE customer service. This step assumes step 1 has successfully distributed all vcpe models except customer service model
diff --git a/test/vcpe/config_sdnc_so.py b/test/vcpe/config_sdnc_so.py
index b19c93acf..375c7aaff 100755
--- a/test/vcpe/config_sdnc_so.py
+++ b/test/vcpe/config_sdnc_so.py
@@ -68,19 +68,24 @@ def insert_customer_service_to_sdnc(vcpecommon):
def insert_customer_service_to_so(vcpecommon):
logger = logging.getLogger(__name__)
cmds = []
- if True:
- csar_file = vcpecommon.find_file('rescust', 'csar', 'csar')
- parser = csar_parser.CsarParser()
- parser.parse_csar(csar_file)
- cmds.append("INSERT INTO service_recipe (ACTION, VERSION_STR, DESCRIPTION, ORCHESTRATION_URI, " \
- "SERVICE_PARAM_XSD, RECIPE_TIMEOUT, SERVICE_TIMEOUT_INTERIM, CREATION_TIMESTAMP, " \
- "SERVICE_MODEL_UUID) VALUES ('createInstance','1','{0}'," \
- "'/mso/async/services/CreateVcpeResCustService',NULL,181,NULL, NOW()," \
- "'{1}');".format(parser.svc_model['modelName'], parser.svc_model['modelVersionId']))
- logger.info(
- 'Please manually run the following sql command in SO catalogdb database to insert customer service recipe')
- logger.info('\n'.join(cmds))
- #vcpecommon.execute_cmds_so_db(cmds)
+ csar_file = vcpecommon.find_file('rescust', 'csar', 'csar')
+ parser = csar_parser.CsarParser()
+ parser.parse_csar(csar_file)
+ cmds.append("INSERT IGNORE INTO service_recipe (ACTION, VERSION_STR, DESCRIPTION, ORCHESTRATION_URI, " \
+ "SERVICE_PARAM_XSD, RECIPE_TIMEOUT, SERVICE_TIMEOUT_INTERIM, CREATION_TIMESTAMP, " \
+ "SERVICE_MODEL_UUID) VALUES ('createInstance','1','{0}'," \
+ "'/mso/async/services/CreateVcpeResCustService',NULL,181,NULL, NOW()," \
+ "'{1}');".format(parser.svc_model['modelName'], parser.svc_model['modelVersionId']))
+ if vcpecommon.oom_mode:
+ logger.info('Inserting vcpe customer service workflow entry into SO catalogdb')
+ vcpecommon.execute_cmds_so_db(cmds)
+ else:
+ logger.info('\n\nManually run a command from Rancher node to insert vcpe'
+ 'customer service workflow entry in SO catalogdb:\n'
+ '\nkubectl -n {0} exec {1}-mariadb-galera-mariadb-galera-0'
+ ' -- mysql -uroot -psecretpassword catalogdb -e '
+ '"'.format(vcpecommon.onap_namespace,
+ vcpecommon.onap_environment) + '\n'.join(cmds) + '"')
def insert_sdnc_ip_pool(vcpecommon):
logger = logging.getLogger(__name__)
diff --git a/test/vcpe/vcpe.py b/test/vcpe/vcpe.py
index 2b167a2d6..c58b60adb 100755
--- a/test/vcpe/vcpe.py
+++ b/test/vcpe/vcpe.py
@@ -215,7 +215,7 @@ def closed_loop(lossrate=0):
def init_so_sdnc():
logger = logging.getLogger('__name__')
vcpecommon = VcpeCommon()
- #config_sdnc_so.insert_sdnc_ip_pool(vcpecommon)
+ config_sdnc_so.insert_sdnc_ip_pool(vcpecommon)
config_sdnc_so.insert_customer_service_to_so(vcpecommon)
#config_sdnc_so.insert_customer_service_to_sdnc(vcpecommon)
vgw_vfmod_name_index= 0
diff --git a/test/vcpe/vcpecommon.py b/test/vcpe/vcpecommon.py
index ddbce4b24..ffc63347f 100755
--- a/test/vcpe/vcpecommon.py
+++ b/test/vcpe/vcpecommon.py
@@ -191,6 +191,11 @@ class VcpeCommon:
'/restconf/config/GENERIC-RESOURCE-API:'
#############################################################################################
+ # MARIADB-GALERA settings
+ self.mariadb_galera_endpoint_ip = self.get_k8s_service_endpoint_info('mariadb-galera','ip')
+ self.mariadb_galera_endpoint_port = self.get_k8s_service_endpoint_info('mariadb-galera','port')
+
+ #############################################################################################
# SO urls, note: do NOT add a '/' at the end of the url
self.so_req_api_url = {'v4': 'http://' + self.hosts['so'] + ':' + self.so_nbi_port + '/onap/so/infra/serviceInstantiation/v7/serviceInstances',
'v5': 'http://' + self.hosts['so'] + ':' + self.so_nbi_port + '/onap/so/infra/serviceInstantiation/v7/serviceInstances'}
@@ -200,7 +205,8 @@ class VcpeCommon:
self.so_db_name = 'catalogdb'
self.so_db_user = 'root'
self.so_db_pass = 'secretpassword'
- self.so_db_port = '30252' if self.oom_mode else '32769'
+ self.so_db_host = self.mariadb_galera_endpoint_ip if self.oom_mode else self.hosts['so']
+ self.so_db_port = self.mariadb_galera_endpoint_port if self.oom_mode else '3306'
self.vpp_inf_url = 'http://{0}:8183/restconf/config/ietf-interfaces:interfaces'
self.vpp_api_headers = {'Content-Type': 'application/json', 'Accept': 'application/json'}
@@ -219,11 +225,6 @@ class VcpeCommon:
self.policy_pap_service_name = 'policy-pap'
#############################################################################################
- # MARIADB-GALERA settings
- self.mariadb_galera_endpoint_ip = self.get_k8s_service_endpoint_info('mariadb-galera','ip')
- self.mariadb_galera_endpoint_port = self.get_k8s_service_endpoint_info('mariadb-galera','port')
-
- #############################################################################################
# AAI urls
self.aai_region_query_url = 'https://' + self.oom_so_sdnc_aai_ip + ':' +\
self.aai_query_port +\
@@ -299,7 +300,7 @@ class VcpeCommon:
def execute_cmds_so_db(self, cmds):
self.execute_cmds_db(cmds, self.so_db_user, self.so_db_pass, self.so_db_name,
- self.hosts['so'], self.so_db_port)
+ self.so_db_host, self.so_db_port)
def execute_cmds_db(self, cmds, dbuser, dbpass, dbname, host, port):
cnx = mysql.connector.connect(user=dbuser, password=dbpass, database=dbname, host=host, port=port)