aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2021-05-19 06:25:30 +0000
committerGerrit Code Review <gerrit@onap.org>2021-05-19 06:25:30 +0000
commitfe3d5889797904b1321e1cc45182a4b236cf3317 (patch)
treef14fd543778d44c842a16fc2c31108e747b7173f
parent64223615e17cdd019c8613b93a4440ae9cac47b3 (diff)
parent1aeb51c2501c863bbea2e1332e878795f264df5a (diff)
Merge "[TEST] Do not try to recreate already created SDC resources" into honolulu
-rw-r--r--src/onaptests/configuration/basic_vm_macro_settings.py3
-rw-r--r--src/onaptests/steps/onboard/pnf.py40
-rw-r--r--src/onaptests/steps/onboard/service.py34
-rw-r--r--src/onaptests/steps/onboard/vf.py28
4 files changed, 58 insertions, 47 deletions
diff --git a/src/onaptests/configuration/basic_vm_macro_settings.py b/src/onaptests/configuration/basic_vm_macro_settings.py
index 7bce5db..adf3cd3 100644
--- a/src/onaptests/configuration/basic_vm_macro_settings.py
+++ b/src/onaptests/configuration/basic_vm_macro_settings.py
@@ -1,6 +1,7 @@
import os
import openstack
from pathlib import Path
+from uuid import uuid4
from yaml import load
@@ -57,4 +58,4 @@ try:
except (FileNotFoundError, ValueError):
raise onap_test_exceptions.TestConfigurationException
-SERVICE_INSTANCE_NAME = "basic_vm_macro_service_instance"
+SERVICE_INSTANCE_NAME = f"basic_macro_{str(uuid4())}"
diff --git a/src/onaptests/steps/onboard/pnf.py b/src/onaptests/steps/onboard/pnf.py
index 547e0c0..01f2248 100644
--- a/src/onaptests/steps/onboard/pnf.py
+++ b/src/onaptests/steps/onboard/pnf.py
@@ -49,14 +49,15 @@ class PnfOnboardStep(BaseStep):
super().execute()
vendor: Vendor = Vendor(name=settings.VENDOR_NAME)
pnf: Pnf = Pnf(name=settings.PNF_NAME, vendor=vendor)
- pnf.create()
- pnf.add_deployment_artifact(
- artifact_type=settings.PNF_ARTIFACT_TYPE,
- artifact_name=settings.PNF_ARTIFACT_NAME,
- artifact_label=settings.PNF_ARTIFACT_LABEL,
- artifact=settings.PNF_ARTIFACT_FILE_PATH
- )
- pnf.onboard()
+ if not pnf.created():
+ pnf.create()
+ pnf.add_deployment_artifact(
+ artifact_type=settings.PNF_ARTIFACT_TYPE,
+ artifact_name=settings.PNF_ARTIFACT_NAME,
+ artifact_label=settings.PNF_ARTIFACT_LABEL,
+ artifact=settings.PNF_ARTIFACT_FILE_PATH
+ )
+ pnf.onboard()
class YamlTemplatePnfOnboardStep(YamlTemplateBaseStep):
@@ -104,12 +105,17 @@ class YamlTemplatePnfOnboardStep(YamlTemplateBaseStep):
if "pnfs" in self.yaml_template:
vendor: Vendor = Vendor(name=settings.VENDOR_NAME)
for pnf in self.yaml_template["pnfs"]:
- pnf_obj: Pnf = Pnf(name=pnf["pnf_name"], vendor=vendor)
- pnf_obj.create()
- pnf_obj.add_deployment_artifact(
- artifact_type=pnf["pnf_artifact_type"],
- artifact_name=pnf["pnf_artifact_name"],
- artifact_label=pnf["pnf_artifact_label"],
- artifact=pnf["pnf_artifact_file_path"]
- )
- pnf_obj.onboard()
+ if "heat_files_to_upload" in pnf:
+ vsp: Vsp = Vsp(name=f"{pnf['pnf_name']}_VSP")
+ else:
+ vsp = None
+ pnf_obj: Pnf = Pnf(name=pnf["pnf_name"], vendor=vendor, vsp=vsp)
+ if not pnf_obj.created():
+ pnf_obj.create()
+ pnf_obj.add_deployment_artifact(
+ artifact_type=pnf["pnf_artifact_type"],
+ artifact_name=pnf["pnf_artifact_name"],
+ artifact_label=pnf["pnf_artifact_label"],
+ artifact=pnf["pnf_artifact_file_path"]
+ )
+ pnf_obj.onboard()
diff --git a/src/onaptests/steps/onboard/service.py b/src/onaptests/steps/onboard/service.py
index 6300a43..8a7303b 100644
--- a/src/onaptests/steps/onboard/service.py
+++ b/src/onaptests/steps/onboard/service.py
@@ -55,16 +55,17 @@ class ServiceOnboardStep(BaseStep):
"""
super().execute()
service: Service = Service(name=settings.SERVICE_NAME, instantiation_type=settings.SERVICE_INSTANTIATION_TYPE)
- service.create()
- if settings.VL_NAME != "":
- vl: Vl = Vl(name=settings.VL_NAME)
- service.add_resource(vl)
- if settings.VF_NAME != "":
- vf: Vf = Vf(name=settings.VF_NAME)
- service.add_resource(vf)
- if settings.PNF_NAME != "":
- pnf: Pnf = Pnf(name=settings.PNF_NAME)
- service.add_resource(pnf)
+ if not service.created():
+ service.create()
+ if settings.VL_NAME != "":
+ vl: Vl = Vl(name=settings.VL_NAME)
+ service.add_resource(vl)
+ if settings.VF_NAME != "":
+ vf: Vf = Vf(name=settings.VF_NAME)
+ service.add_resource(vf)
+ if settings.PNF_NAME != "":
+ pnf: Pnf = Pnf(name=settings.PNF_NAME)
+ service.add_resource(pnf)
# If the service is already distributed, do not try to checkin/onboard (replay of tests)
# checkin is done if needed
# If service is replayed, no need to try to re-onboard the model
@@ -141,12 +142,13 @@ class YamlTemplateServiceOnboardStep(YamlTemplateBaseStep):
else:
instantiation_type: ServiceInstantiationType = ServiceInstantiationType.A_LA_CARTE
service: Service = Service(name=self.service_name, instantiation_type=instantiation_type)
- service.create()
- self.declare_resources(service)
- self.assign_properties(service)
- # If the service is already distributed, do not try to checkin/onboard (replay of tests)
- # checkin is done if needed
- # If service is replayed, no need to try to re-onboard the model
+ if not service.created():
+ service.create()
+ self.declare_resources(service)
+ self.assign_properties(service)
+ # If the service is already distributed, do not try to checkin/onboard (replay of tests)
+ # checkin is done if needed
+ # If service is replayed, no need to try to re-onboard the model
if not service.distributed:
try:
service.checkin()
diff --git a/src/onaptests/steps/onboard/vf.py b/src/onaptests/steps/onboard/vf.py
index 5f5fc4d..c6582dd 100644
--- a/src/onaptests/steps/onboard/vf.py
+++ b/src/onaptests/steps/onboard/vf.py
@@ -40,7 +40,8 @@ class VfOnboardStep(BaseStep):
super().execute()
vsp: Vsp = Vsp(name=settings.VSP_NAME)
vf: Vf = Vf(name=settings.VF_NAME, vsp=vsp)
- vf.onboard()
+ if not vf.created():
+ vf.onboard()
class YamlTemplateVfOnboardStep(YamlTemplateBaseStep):
@@ -85,15 +86,16 @@ class YamlTemplateVfOnboardStep(YamlTemplateBaseStep):
for vnf in self.yaml_template["vnfs"]:
vsp: Vsp = Vsp(name=f"{vnf['vnf_name']}_VSP")
vf: Vf = Vf(name=vnf['vnf_name'], vsp=vsp)
- if all([x in vnf for x in ["vnf_artifact_type",
- "vnf_artifact_name",
- "vnf_artifact_label",
- "vnf_artifact_file_path"]]):
- vf.create()
- vf.add_deployment_artifact(
- artifact_type=vnf["vnf_artifact_type"],
- artifact_name=vnf["vnf_artifact_name"],
- artifact_label=vnf["vnf_artifact_label"],
- artifact=vnf["vnf_artifact_file_path"]
- )
- vf.onboard()
+ if not vf.created():
+ if all([x in vnf for x in ["vnf_artifact_type",
+ "vnf_artifact_name",
+ "vnf_artifact_label",
+ "vnf_artifact_file_path"]]):
+ vf.create()
+ vf.add_deployment_artifact(
+ artifact_type=vnf["vnf_artifact_type"],
+ artifact_name=vnf["vnf_artifact_name"],
+ artifact_label=vnf["vnf_artifact_label"],
+ artifact=vnf["vnf_artifact_file_path"]
+ )
+ vf.onboard()