Get model-invariant-id from AAI for vFWCL
Change-Id: I6364bb71d9ec88e0e0bcb962b9d7531df09652c6
Issue-ID: INT-715
Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
diff --git a/robot/resources/demo_preload.robot b/robot/resources/demo_preload.robot
index 5b03a0b..41936a0 100644
--- a/robot/resources/demo_preload.robot
+++ b/robot/resources/demo_preload.robot
@@ -47,7 +47,7 @@
${uuid}= Generate UUID
${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${GLOBAL_VID_USERNAME} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
${resp}= Post Request vid ${data_path} data=${vid_data} headers=${headers}
-
+
Load Customer
[Documentation] Use openECOMP to Orchestrate a service.
[Arguments] ${customer_name}
@@ -156,11 +156,16 @@
Instantiate VNF
[Arguments] ${service} ${vf_module_label}=NULL
Setup Orchestrate VNF ${GLOBAL_AAI_CLOUD_OWNER} SharedNode OwnerType v1 CloudZone
- ${vf_module_name} ${service}= Orchestrate VNF DemoCust ${service} ${service} ${TENANT_NAME}
+ ${vf_module_name} ${service} ${generic_vnfs}= Orchestrate VNF DemoCust ${service} ${service} ${TENANT_NAME}
Save For Delete
Log to Console Customer Name=${CUSTOMER_NAME}
Log to Console VNF Module Name=${vf_module_name}
- ${model_invariant_id}= Run MSO Get ModelInvariantId ${SUITE_SERVICE_MODEL_NAME} ${vf_module_label}
+ # Don't get from MSO for now due to SO-1186
+ # ${model_invariant_id}= Run MSO Get ModelInvariantId ${SUITE_SERVICE_MODEL_NAME} ${vf_module_label}
+ ${model_invariant_id}= Set Variable ${EMPTY}
+ :for ${vf_module} in @{generic_vnfs}
+ \ ${generic_vnf}= Get From Dictionary ${generic_vnfs} ${vf_module}
+ \ ${model_invariant_id}= Set Variable If '${vf_module_label}' in '${vf_module}' ${generic_vnf['model-invariant-id']} ${model_invariant_id}
Log to Console ModelInvariantID=${model_invariant_id}
${status} ${value}= Run Keyword And Ignore Error Update vVFWCL Policy ${model_invariant_id}
${status} ${value}= Run Keyword And Ignore Error APPC Mount Point ${vf_module_name}
@@ -168,11 +173,16 @@
Instantiate Demo VNF
[Arguments] ${service} ${vf_module_label}=NULL
Setup Orchestrate VNF ${GLOBAL_AAI_CLOUD_OWNER} SharedNode OwnerType v1 CloudZone
- ${vf_module_name} ${service}= Orchestrate Demo VNF Demonstration ${service} ${service} ${TENANT_NAME}
+ ${vf_module_name} ${service} ${generic_vnfs}= Orchestrate Demo VNF Demonstration ${service} ${service} ${TENANT_NAME}
#Save For Delete
Log to Console Customer Name=${CUSTOMER_NAME}
Log to Console VNF Module Name=${vf_module_name}
- ${model_invariant_id}= Run MSO Get ModelInvariantId ${SUITE_SERVICE_MODEL_NAME} ${vf_module_label}
+ # Don't get from MSO for now due to SO-1186
+ # ${model_invariant_id}= Run MSO Get ModelInvariantId ${SUITE_SERVICE_MODEL_NAME} ${vf_module_label}
+ ${model_invariant_id}= Set Variable ${EMPTY}
+ :for ${vf_module} in @{generic_vnfs}
+ \ ${generic_vnf}= Get From Dictionary ${generic_vnfs} ${vf_module}
+ \ ${model_invariant_id}= Set Variable If '${vf_module_label}' in '${vf_module}' ${generic_vnf['model-invariant-id']} ${model_invariant_id}
Log to Console ModelInvariantID=${model_invariant_id}
${status} ${value}= Run Keyword And Ignore Error Update vVFWCL Policy ${model_invariant_id}
${status} ${value}= Run Keyword And Ignore Error APPC Mount Point ${vf_module_name}
diff --git a/robot/resources/test_templates/vnf_orchestration_test_template.robot b/robot/resources/test_templates/vnf_orchestration_test_template.robot
index 26d8eef..e3c3b7f 100644
--- a/robot/resources/test_templates/vnf_orchestration_test_template.robot
+++ b/robot/resources/test_templates/vnf_orchestration_test_template.robot
@@ -67,6 +67,7 @@
Set Test Variable ${SERVICE_INSTANCE_ID} ${service_instance_id}
Validate Service Instance ${service_instance_id} ${service} ${customer_name}
${vnflist}= Get From Dictionary ${GLOBAL_SERVICE_VNF_MAPPING} ${service}
+ ${generic_vnfs}= Create Dictionary
:for ${vnf} in @{vnflist}
\ ${vnf_name}= Catenate Ete_${vnf}_${uuid}
\ ${vf_module_name}= Catenate Vfmodule_Ete_${vnf}_${uuid}
@@ -77,13 +78,13 @@
\ ${vf_module_type} ${closedloop_vf_module}= Preload Vnf ${service_instance_id} ${vnf_name} ${vnf_type} ${vf_module_name} ${vf_module} ${vnf} ${uuid}
\ ${vf_module_id}= Create VID VNF module ${service_instance_id} ${vf_module_name} ${lcp_region} ${tenant} ${vf_module_type} ${CUSTOMER_NAME} ${vnf_name}
\ ${generic_vnf}= Validate Generic VNF ${vnf_name} ${vnf_type} ${service_instance_id}
- \ VLB Closed Loop Hack ${service} ${generic_vnf} ${closedloop_vf_module}
+ \ Set To Dictionary ${generic_vnfs} ${vf_module} ${generic_vnf}
+ \ Run Keyword If '${service}' == 'vLB' VLB Closed Loop Hack ${service} ${generic_vnf} ${closedloop_vf_module}
\ Set Test Variable ${STACK_NAME} ${vf_module_name}
- \ Append To List ${STACK_NAMES} ${STACK_NAME}
# TODO: Need to look at a better way to default ipv4_oam_interface search for Heatbridge
- \ Run Keyword and Ignore Error Execute Heatbridge ${vf_module_name} ${service_instance_id} ${vnf} ipv4_oam_interface
- \ Run Keyword and Ignore Error Validate VF Module ${vf_module_name} ${vnf}
- [Return] ${vf_module_name} ${service}
+ \ Execute Heatbridge ${vf_module_name} ${service_instance_id} ${vnf} ipv4_oam_interface
+ \ Validate VF Module ${vf_module_name} ${vnf}
+ [Return] ${vf_module_name} ${service} ${generic_vnfs}
Orchestrate Demo VNF
@@ -110,6 +111,7 @@
Set Test Variable ${SERVICE_INSTANCE_ID} ${service_instance_id}
Validate Service Instance ${service_instance_id} ${service} ${customer_name}
${vnflist}= Get From Dictionary ${GLOBAL_SERVICE_VNF_MAPPING} ${service}
+ ${generic_vnfs}= Create Dictionary
:for ${vnf} in @{vnflist}
\ ${vnf_name}= Catenate Ete_${vnf}_${uuid}
\ ${vf_module_name}= Catenate Vfmodule_Demo_${vnf}_${uuid}
@@ -122,13 +124,13 @@
\ ${vf_module_type} ${closedloop_vf_module}= Preload Vnf ${service_instance_id} ${vnf_name} ${vnf_type} ${vf_module_name} ${vf_modules} ${vnf} ${uuid}
\ ${vf_module_id}= Create VID VNF module ${service_instance_id} ${vf_module_name} ${lcp_region} ${tenant} ${vf_module_type} ${CUSTOMER_NAME} ${vnf_name}
\ ${generic_vnf}= Validate Generic VNF ${vnf_name} ${vnf_type} ${service_instance_id}
- \ VLB Closed Loop Hack ${service} ${generic_vnf} ${closedloop_vf_module}
+ \ Set To Dictionary ${generic_vnfs} ${vf_module} ${generic_vnf}
+ \ Run Keyword If '${service}' == 'vLB' VLB Closed Loop Hack ${service} ${generic_vnf} ${closedloop_vf_module}
\ Set Test Variable ${STACK_NAME} ${vf_module_name}
- \ Append To List ${STACK_NAMES} ${STACK_NAME}
# TODO: Need to look at a better way to default ipv4_oam_interface search for Heatbridge
- \ Run Keyword and Ignore Error Execute Heatbridge ${vf_module_name} ${service_instance_id} ${vnf} ipv4_oam_interface
- \ Run Keyword and Ignore Error Validate VF Module ${vf_module_name} ${vnf}
- [Return] ${vf_module_name} ${service}
+ \ Execute Heatbridge ${vf_module_name} ${service_instance_id} ${vnf} ipv4_oam_interface
+ \ Validate VF Module ${vf_module_name} ${vnf}
+ [Return] ${vf_module_name} ${service} ${generic_vnfs}
Get VNF Type