diff options
author | jf9860 <jf9860@att.com> | 2017-02-22 16:52:54 -0500 |
---|---|---|
committer | jf9860 <jf9860@att.com> | 2017-02-22 17:02:20 -0500 |
commit | 75010a4fe2ec3e182b45196e7e5b2c7889673092 (patch) | |
tree | bb235c1a4732e7c49f53b2f309ebced3f6d9cf80 /robot/resources/test_templates | |
parent | 0f7f2653d2190514d923046b40975967f82b0b3e (diff) |
Complete teardown implementation.
Add demo.sh to support hands on demo
Change-Id: Idf235957bd992e6d7482c8241f6ba8b8944c2826
Signed-off-by: jf9860 <jf9860@att.com>
Diffstat (limited to 'robot/resources/test_templates')
-rw-r--r-- | robot/resources/test_templates/model_test_template.robot | 4 | ||||
-rw-r--r-- | robot/resources/test_templates/vnf_orchestration_test_template.robot | 75 |
2 files changed, 29 insertions, 50 deletions
diff --git a/robot/resources/test_templates/model_test_template.robot b/robot/resources/test_templates/model_test_template.robot index 263c5929..e97984d5 100644 --- a/robot/resources/test_templates/model_test_template.robot +++ b/robot/resources/test_templates/model_test_template.robot @@ -23,7 +23,7 @@ ${CATALOG_SERVICE_ID} *** Keywords *** Model Distribution For Directory - [Arguments] ${service} + [Arguments] ${service} ${catalog_service_name}= ${directory_list}= Get From Dictionary ${GLOBAL_SERVICE_FOLDER_MAPPING} ${service} ${ziplist}= Create List :for ${directory} in @{directory_list} @@ -32,7 +32,7 @@ Model Distribution For Directory \ OperatingSystem.Create Directory ${ASDC_ASSETS_DIRECTORY}/temp \ Create Zip From Files In Directory ${folder} ${zip} \ Append To List ${ziplist} ${zip} - ${catalog_service_name} ${catalog_resource_name} ${vf_modules} ${catalog_resource_ids} ${catalog_service_id} Distribute Model From ASDC ${ziplist} + ${catalog_service_name} ${catalog_resource_name} ${vf_modules} ${catalog_resource_ids} ${catalog_service_id} Distribute Model From ASDC ${ziplist} ${catalog_service_name} Set Test Variable ${CATALOG_RESOURCE_IDS} ${catalog_resource_ids} Set Test Variable ${CATALOG_SERVICE_ID} ${catalog_service_id} [Return] ${catalog_service_name} ${catalog_resource_name} ${vf_modules} diff --git a/robot/resources/test_templates/vnf_orchestration_test_template.robot b/robot/resources/test_templates/vnf_orchestration_test_template.robot index 00f15cf8..a149745a 100644 --- a/robot/resources/test_templates/vnf_orchestration_test_template.robot +++ b/robot/resources/test_templates/vnf_orchestration_test_template.robot @@ -5,6 +5,7 @@ Resource ../vid/create_service_instance.robot Resource ../vid/vid_interface.robot Resource ../aai/service_instance.robot Resource ../vid/create_vid_vnf.robot +Resource ../vid/teardown_vid.robot Resource ../sdngc_interface.robot Resource model_test_template.robot @@ -31,10 +32,12 @@ ${CUSTOMER_NAME} ${STACK_NAME} ${SERVICE} ${VVG_SERVER_ID} +${SERVICE_INSTANCE_ID} *** Keywords *** Orchestrate VNF + [Documentation] Use openECOMP to Orchestrate a service. [Arguments] ${customer_name} ${service} ${product_family} ${lcp_region} ${tenant} ${uuid}= Generate UUID Set Test Variable ${CUSTOMER_NAME} ${customer_name}_${uuid} @@ -51,6 +54,7 @@ Orchestrate VNF Setup Browser Login To VID GUI ${service_instance_id}= Create VID Service Instance ${customer_name} ${service_model_type} ${service} ${service_name} + Set Test Variable ${SERVICE_INSTANCE_ID} ${service_instance_id} Validate Service Instance ${service_instance_id} ${service} ${customer_name} Create VID VNF ${service_instance_id} ${vnf_name} ${product_family} ${lcp_region} ${tenant} ${vnf_type} ${vf_module_type} ${closedloop_vf_module}= Preload Vnf ${service_instance_id} ${vnf_name} ${vnf_type} ${vf_module_name} ${vf_modules} ${service} ${uuid} @@ -61,7 +65,6 @@ Orchestrate VNF Execute Heatbridge ${vf_module_name} ${service_instance_id} ${service} Validate VF Module ${vf_module_name} ${service} [Return] ${vf_module_name} ${service} - [Teardown] Close All Browsers Create Customer For VNF @@ -73,7 +76,8 @@ Create Customer For VNF Create Service If Not Exists ${service_type} Setup Orchestrate VNF - [Documentation] Called before each test case to ensure data required by the Orchstrate VNF exists + [Documentation] Called before each test case to ensure tenant and region data + ... required by the Orchstrate VNF exists in A&AI [Arguments] ${cloud_owner} ${cloud_region_id} ${cloud_type} ${owner_defined_type} ${cloud_region_version} ${cloud_zone} Initialize Tenant From Openstack Initialize Regions From Openstack @@ -82,19 +86,22 @@ Setup Orchestrate VNF Log Orchestrate VNF setup complete Initialize Tenant From Openstack + [Documentation] Initialize the tenant test variables Run Openstack Auth Request auth ${tenants}= Get Current Openstack Tenant auth ${tenant_name}= Evaluate $tenants.get("name") ${tenant_id}= Evaluate $tenants.get("id") - Set Suite Variable ${TENANT_NAME} ${tenant_name} - Set Suite Variable ${TENANT_ID} ${tenant_id} + Set Test Variable ${TENANT_NAME} ${tenant_name} + Set Test Variable ${TENANT_ID} ${tenant_id} Initialize Regions From Openstack + [Documentation] Initialize the regions test variable Run Openstack Auth Request auth ${regs}= Get Openstack Regions auth - Set Suite Variable ${REGIONS} ${regs} + Set Test Variable ${REGIONS} ${regs} Create VVG Server + [Documentation] For the VolumeGroup test case, create a server to attach the volume group to be orchestrated. [Arguments] ${uuid} Run Openstack Auth Request auth ${vvg_server_name}= Catenate vVG_${uuid} @@ -106,7 +113,9 @@ Create VVG Server Set To Dictionary ${vvg_params} nova_instance ${server_id} Wait for Server to Be Active auth ${server_id} -Get VVG Preload Parameters +Get VVG Preload Parameters + [Documentation] Get preload parameters for the VVG test case so we can include + ... the nova_instance id of the attached server ${test_dict}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} Vnf-Orchestration ${vvg_params} Get From Dictionary ${test_dict} vvg_preload.template [Return] ${vvg_params} @@ -114,15 +123,15 @@ Get VVG Preload Parameters Teardown VNF [Documentation] Called at the end of a test case to tear down the VNF created by Orchestrate VNF Teardown VVG Server - # Free up rackspace resources until true teardown is implemented - Run Keyword If '${TEST STATUS}' == 'PASS' Teardown Stack ${STACK_NAME} - Set Test Variable ${VVG_SERVER_ID} '' - - ## Conditional remove so as to enable manual teardown testing of failed stacks + Teardown VLB Closed Loop Hack + Run Keyword If '${TEST STATUS}' == 'PASS' Teardown VID ${SERVICE_INSTANCE_ID} ${GLOBAL_OPENSTACK_SERVICE_REGION} ${TENANT_ID} Run Keyword If '${TEST STATUS}' == 'PASS' Teardown Model Distribution - Log Teardown VNF not completely implemented + Run Keyword If '${TEST STATUS}' == 'PASS' Clean A&AI Inventory + Close All Browsers + Log Teardown VNF implemented for successful tests only Teardown VVG Server + [Documentation] Teardown the server created as a place to mount the Volume Group. Return From Keyword if '${VVG_SERVER_ID}' == '' Delete Server auth ${VVG_SERVER_ID} Wait for Server To Be Deleted auth ${VVG_SERVER_ID} @@ -131,7 +140,7 @@ Teardown VVG Server Log Teardown VVG Server Completed Teardown Stack - [Documentation] Called at the end of a test case to tear down the Stack created by Orchestrate VNF + [Documentation] OBSOLETE - Called at the end of a test case to tear down the Stack created by Orchestrate VNF [Arguments] ${stack} Run Openstack Auth Request auth ${stack_info}= Get Stack Details auth ${stack} @@ -141,43 +150,13 @@ Teardown Stack Delete Openstack Stack auth ${stack} ${stack_id} Log Deleted ${stack} ${stack_id} Run Keyword If '${key_pair_status}' == 'PASS' Delete Openstack Keypair auth ${keypair_name} - ## Removed code to remove all of the IPs from the oam network - didn't help - - -Get Ecomp Private Net Ports - [Arguments] ${alias} ${stack_info} ${service} - ${list}= Create List - ${netid}= Get From Dictionary ${stack_info} ecomp_private_net_id - ${cidr}= Get From Dictionary ${stack_info} ecomp_private_net_cidr - ${ip_addresses}= Get Ecomp Ip Addresses ${stack_info} ${service} - ${net_ports}= Get Openstack Ports For Subnet ${alias} ${netid} ${cidr} - :for ${ip_address} in @{ip_addresses} - \ ${port}= Find Ecomp Port ${net_ports} ${ip_address} - \ Run Keyword If ${port} is not None Append To List ${list} ${port} - [Return] ${list} - -Get Ecomp Ip Addresses - [Arguments] ${stack_info} ${service} - ${ip_addresses}= Create List - ${names}= Get From Dictionary ${GLOBAL_SERVICE_ECOMP_IP_MAPPING} ${service} - :for ${name} in @{names} - \ ${ip}= Get From Dictionary ${stack_info} ${name} - \ Append To List ${ip_addresses} ${ip} - [Return] ${ip_addresses} - -Find Ecomp Port - [Arguments] ${ports} ${ip_address} - :for ${port} in @{ports} - \ Return From Keyword If '${port['fixed_ips'][0]['ip_address']}' == '${ip_address}' ${port} - [Return] None - + Teardown VLB Closed Loop Hack Clean A&AI Inventory [Documentation] Clean up Tenant in A&AI, Create Customer, Create Service and related relationships - [Arguments] ${customer_id} ${cloud_owner} ${service_type} :FOR ${region} IN @{REGIONS} - \ Delete Tenant ${TENANT_ID} ${cloud_owner} ${region} - \ Delete Cloud Region ${TENANT_ID} ${cloud_owner} ${region} - Delete Customer ${customer_id} - Delete Service If Exists ${service_type} + \ Delete Tenant ${TENANT_ID} ${GLOBAL_AAI_CLOUD_OWNER} ${region} + \ Delete Cloud Region ${TENANT_ID} ${GLOBAL_AAI_CLOUD_OWNER} ${region} + Delete Customer ${CUSTOMER_NAME} + Delete Service If Exists ${SERVICE} |