diff options
Diffstat (limited to 'robot/resources/stack_validation')
5 files changed, 42 insertions, 78 deletions
diff --git a/robot/resources/stack_validation/policy_check_vfw.robot b/robot/resources/stack_validation/policy_check_vfw.robot index 10b25843..126f437e 100644 --- a/robot/resources/stack_validation/policy_check_vfw.robot +++ b/robot/resources/stack_validation/policy_check_vfw.robot @@ -25,73 +25,73 @@ ${ASSETS} ${EXECDIR}/robot/assets/ *** Keywords *** Policy Check Firewall Stack - [Documentation] Identifies the firewall servers in the VFW Stack in the GLOBAL_OPENSTACK_SERVICE_REGION - [Arguments] ${stack_name} ${policy_rate} + [Documentation] Executes the vFW policy closed loop test. + [Arguments] ${stack_name} ${policy_rate} Run Openstack Auth Request auth ${stack_info}= Wait for Stack to Be Deployed auth ${stack_name} ${stack_id}= Get From Dictionary ${stack_info} id - ${server_list}= Get Openstack Servers auth + ${server_list}= Get Openstack Servers auth Log ${server_list} ${vpg_unprotected_ip}= Get From Dictionary ${stack_info} vpg_private_ip_0 ${vsn_protected_ip}= Get From Dictionary ${stack_info} vsn_private_ip_0 - ${vpg_public_ip}= Get Server Ip ${server_list} ${stack_info} vpg_name_0 network_name=public + ${vpg_public_ip}= Get Server Ip ${server_list} ${stack_info} vpg_name_0 network_name=public ${vsn_public_ip}= Get Server Ip ${server_list} ${stack_info} vsn_name_0 network_name=public ${upper_bound}= Evaluate ${policy_rate}*2 Wait Until Keyword Succeeds 300s 1s Run VFW Policy Check ${vpg_public_ip} ${policy_rate} ${upper_bound} 1 Run VFW Policy Check - [Documentation] Push traffic above upper bound, wait for policy to fix it, push traffic to lower bound, wait for policy to fix it, + [Documentation] Push traffic above upper bound, wait for policy to fix it, push traffic to lower bound, wait for policy to fix it, [Arguments] ${vpg_public_ip} ${policy_rate} ${upper_bound} ${lower_bound} # Force traffic above threshold Check For Policy Enforcement ${vpg_public_ip} ${policy_rate} ${upper_bound} # Force traffic below threshold Check For Policy Enforcement ${vpg_public_ip} ${policy_rate} ${lower_bound} - + Check For Policy Enforcement - [Documentation] Push traffic above upper bound, wait for policy to fix it, push traffic to lower bound, wait for policy to fix it, + [Documentation] Push traffic above upper bound, wait for policy to fix it, push traffic to lower bound, wait for policy to fix it, [Arguments] ${vpg_public_ip} ${policy_rate} ${forced_rate} Enable Streams ${vpg_public_ip} ${forced_rate} Wait Until Keyword Succeeds 20s 5s Test For Expected Rate ${vpg_public_ip} ${forced_rate} Wait Until Keyword Succeeds 280s 5s Test For Expected Rate ${vpg_public_ip} ${policy_rate} Test For Expected Rate - [Documentation] Ge the number of pg-streams from the PGN, and test to see if it is what we expect. + [Documentation] Ge the number of pg-streams from the PGN, and test to see if it is what we expect. [Arguments] ${vpg_public_ip} ${number_of_streams} ${list}= Get List Of Enabled Streams ${vpg_public_ip} ${list}= Evaluate ${list['sample-plugin']}['pg-streams']['pg-stream'] - Length Should Be ${list} ${number_of_streams} + Length Should Be ${list} ${number_of_streams} Policy Check vLB Stack - [Documentation] Identifies the firewall servers in the VFW Stack in the GLOBAL_OPENSTACK_SERVICE_REGION - [Arguments] ${stack_name} ${policy_rate} + [Documentation] Executes the vLB policy closed loop test + [Arguments] ${stack_name} ${policy_rate} Run Openstack Auth Request auth ${stack_info}= Wait for Stack to Be Deployed auth ${stack_name} ${stack_id}= Get From Dictionary ${stack_info} id - ${server_list}= Get Openstack Servers auth - ${vlb_public_ip}= Get Server Ip ${server_list} ${stack_info} vlb_name_0 network_name=public + ${server_list}= Get Openstack Servers auth + ${vlb_public_ip}= Get Server Ip ${server_list} ${stack_info} vlb_name_0 network_name=public ${upper_bound}= Evaluate ${policy_rate}*2 - Start DNS Traffic ${vlb_public_ip} ${upper_bound} + Start DNS Traffic ${vlb_public_ip} ${upper_bound} # Now wiat for the dnsscaling stack to be deployed ${prefix}= Get DNSScaling Prefix - ${dnsscaling}= Replace String Using Regexp ${stack_name} ^Vfmodule_ ${prefix} + ${dnsscaling}= Replace String Using Regexp ${stack_name} ^Vfmodule_ ${prefix} ${dnsscaling_info}= Wait for Stack to Be Deployed auth ${dnsscaling} VLB Closed Loop Hack Update ${dnsscaling} # TO DO: Log into vLB and cehck that traffic is flowing to the new DNS - [Return] ${dnsscaling} + [Return] ${dnsscaling} Get DNSScaling Prefix ${mapping}= Get From Dictionary ${GLOBAL_SERVICE_TEMPLATE_MAPPING} vLB :for ${dict} in @{mapping} \ Return From Keyword If '${dict['isBase']}' == 'false' ${dict['prefix']} [Return] None - + Start DNS Traffic [Documentation] Run nslookups at rate per second. Run for 10 minutes or until it is called by the terminate process [Arguments] ${vlb_public_ip} ${rate} ${pid}= Start Process ./dnstraffic.sh ${vlb_public_ip} ${rate} ${GLOBAL_DNS_TRAFFIC_DURATION} - [Return] ${pid}
\ No newline at end of file + [Return] ${pid}
\ No newline at end of file diff --git a/robot/resources/stack_validation/validate_dns_scaling.robot b/robot/resources/stack_validation/validate_dns_scaling.robot index f63479ea..41c04633 100644 --- a/robot/resources/stack_validation/validate_dns_scaling.robot +++ b/robot/resources/stack_validation/validate_dns_scaling.robot @@ -21,23 +21,22 @@ ${ASSETS} ${EXECDIR}/robot/assets/ *** Keywords *** Validate Dns Scaling Stack - [Documentation] Identifies the servers in the STACK_NAME in the GLOBAL_OPENSTACK_SERVICE_REGION - [Arguments] ${STACK_NAME} + [Documentation] Wait for the DNS scaling stack to be instantiated + [Arguments] ${STACK_NAME} Run Openstack Auth Request auth ${stack_info}= Wait for Stack to Be Deployed auth ${STACK_NAME} ${stack_id}= Get From Dictionary ${stack_info} id - ${server_list}= Get Openstack Servers auth + ${server_list}= Get Openstack Servers auth Log ${server_list} - #${vpg_unprotected_ip}= Get From Dictionary ${stack_info} vpg_private_ip_0 - #${vsn_protected_ip}= Get From Dictionary ${stack_info} vsn_private_ip_0 - ${vdns_public_ip}= Get Server Ip ${server_list} ${stack_info} vdns_name_0 network_name=public + ${vdns_public_ip}= Get Server Ip ${server_list} ${stack_info} vdns_name_0 network_name=public Wait For Server ${vdns_public_ip} Log Accessed all servers #Wait for vDNS ${vdns_public_ip} Log All server processes up Wait For vDNS - [Documentation] Wait for the defined firewall processes to come up - [Arguments] ${ip} - Wait for Process on Host java DNSServer ${ip} + [Documentation] Wait for the DNSServer to be running on the scaling DNS. + ... Disabled. Potential for robot to hang due to network reconfigurations at startup. + [Arguments] ${ip} + Wait for Process on Host java DNSServer ${ip} diff --git a/robot/resources/stack_validation/validate_vfw.robot b/robot/resources/stack_validation/validate_vfw.robot index 383fbc7b..a5322efb 100644 --- a/robot/resources/stack_validation/validate_vfw.robot +++ b/robot/resources/stack_validation/validate_vfw.robot @@ -22,7 +22,7 @@ ${ASSETS} ${EXECDIR}/robot/assets/ *** Keywords *** Validate Firewall Stack - [Documentation] Identifies the firewall servers in the VFW Stack in the GLOBAL_OPENSTACK_SERVICE_REGION + [Documentation] Identifies and validates the firewall servers in the VFW Stack [Arguments] ${STACK_NAME} Run Openstack Auth Request auth ${stack_info}= Wait for Stack to Be Deployed auth ${STACK_NAME} @@ -46,22 +46,6 @@ Validate Firewall Stack Log All server processes up ${vpg_oam_ip}= Get From Dictionary ${stack_info} vpg_private_ip_1 ${appc}= Create Mount Point In APPC ${vpg_name_0} ${vpg_oam_ip} - - # Following hack was implemented because the stack doesn't always come up clean - # It was found that rebooting the servers at this point did not improve the - # chances of the packets flowing to the SNK - #${status} ${data}= Run Keyword And Ignore Error Wait For Packets ${vpg_public_ip} ${vpg_unprotected_ip} ${vsn_protected_ip} ${vsn_public_ip} - #Return From Keyword if '${status}' == 'PASS' - #Close All Connections - #Find And Reboot The Server ${stack_info} ${server_list} vfw_name_0 - #Find And Reboot The Server ${stack_info} ${server_list} vpg_name_0 - #Find And Reboot The Server ${stack_info} ${server_list} vsn_name_0 - ## Gives some time for servers to shutdown - #Sleep 10s - #Wait For Server ${vfw_public_ip} - #Wait For Server ${vpg_public_ip} - #Wait For Server ${vsn_public_ip} - Wait For Packets ${vpg_public_ip} ${vpg_unprotected_ip} ${vsn_protected_ip} ${vsn_public_ip} Wait For Packets diff --git a/robot/resources/stack_validation/validate_vlb.robot b/robot/resources/stack_validation/validate_vlb.robot index 9af768fa..eef578ab 100644 --- a/robot/resources/stack_validation/validate_vlb.robot +++ b/robot/resources/stack_validation/validate_vlb.robot @@ -12,49 +12,30 @@ ${ASSETS} ${EXECDIR}/robot/assets/ *** Keywords *** Validate vLB Stack - [Documentation] Identifies the LB and DNS servers in the vLB stack in the GLOBAL_OPENSTACK_SERVICE_REGION - [Arguments] ${stack_name} + [Documentation] Identifies the LB and DNS servers in the vLB stack + [Arguments] ${stack_name} Run Openstack Auth Request auth ${stack_info}= Wait for Stack to Be Deployed auth ${stack_name} ${stack_id}= Get From Dictionary ${stack_info} id - ${server_list}= Get Openstack Servers auth + ${server_list}= Get Openstack Servers auth Log Returned from Get Openstack Servers - - #${vpg_unprotected_ip}= Get From Dictionary ${stack_info} vpg_private_ip_0 - #${vsn_protected_ip}= Get From Dictionary ${stack_info} vsn_private_ip_0 - ${vlb_public_ip}= Get Server Ip ${server_list} ${stack_info} vlb_name_0 network_name=public - ##${vdns_public_ip}= Get Server Ip ${server_list} ${stack_info} vdns_name_0 network_name=public - -# SCript hands right here. Trying to figure out what it is.... - #Wait For Server ${vlb_public_ip} - #Wait For Server ${vdns_public_ip} - #Log Accessed all servers - - - # Following is a hack because the stack doesn't always come up clean - # Give some time for VLB server to reconfigure the network so our script doesn't hang + ${vlb_public_ip}= Get Server Ip ${server_list} ${stack_info} vlb_name_0 network_name=public Log Waiting for ${vlb_public_ip} to reconfigure Sleep 180s - #${status} ${data}= Run Keyword And Ignore Error Wait For vLB ${vlb_public_ip} - #Return From Keyword if '${status}' == 'PASS' - #Close All Connections - #Find And Reboot The Server ${stack_info} ${server_list} vlb_name_0 - - # Give some time for VLB server to reconfigure the network so our script doesn't hang - #Log Waiting for ${vlb_public_ip} to reconfigure - #Sleep 180s - Wait For vLB ${vlb_public_ip} + # Server validations diabled due to issues with load balancer network reconfiguration + # at startup hanging the robot scripts + Wait For vLB ${vlb_public_ip} Log All server processes up Wait For vLB - [Documentation] Wait for the VLB to be functioning as a DNS - [Arguments] ${ip} - Wait Until Keyword Succeeds 300s 10s DNSTest ${ip} + [Documentation] Wait for the VLB to be functioning as a DNS + [Arguments] ${ip} + Wait Until Keyword Succeeds 300s 10s DNSTest ${ip} Log Succeeded - + DNSTest [Documentation] Wait for the defined VLoadBalancer to process nslookup [Arguments] ${ip} - Log Looking up ${ip} + Log Looking up ${ip} #${returned_ip}= Dns Request host1.dnsdemo.openecomp.org ${ip} #Should Contain '${returned_ip}' . diff --git a/robot/resources/stack_validation/validate_vvg.robot b/robot/resources/stack_validation/validate_vvg.robot index 75340a47..47d9600a 100644 --- a/robot/resources/stack_validation/validate_vvg.robot +++ b/robot/resources/stack_validation/validate_vvg.robot @@ -10,8 +10,8 @@ Resource validate_common.robot ${ASSETS} ${EXECDIR}/robot/assets/ *** Keywords *** -Validate vVG Stack - [Documentation] Identifies the LB and DNS servers in the vLB stack in the GLOBAL_OPENSTACK_SERVICE_REGION - [Arguments] ${stack_name} +Validate vVG Stack + [Documentation] Validation of vVG stack (TBD) + [Arguments] ${stack_name} Log All server processes up |