X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=resources%2Flibraries%2Frobot%2Fhoneycomb%2Fhoneycomb.robot;h=1b08e3955f06cb77e77a9e0d64c07daed0eb7f39;hb=835cb6439afb359dc2ebef02355314c4bebde75e;hp=603fbfa72f1176eca2cc290ce7438635618930c1;hpb=b7f0c133f672b39b49e0480f71dd0629986bcf72;p=csit.git diff --git a/resources/libraries/robot/honeycomb/honeycomb.robot b/resources/libraries/robot/honeycomb/honeycomb.robot index 603fbfa72f..1b08e3955f 100644 --- a/resources/libraries/robot/honeycomb/honeycomb.robot +++ b/resources/libraries/robot/honeycomb/honeycomb.robot @@ -41,6 +41,7 @@ | | Start honeycomb on DUTs | @{duts} | | Wait until keyword succeeds | 4min | 16sec | | ... | Check honeycomb startup state | @{duts} +| | Sleep | 5s | Make sure all modules are loaded and ready. | Stop Honeycomb service on DUTs | | [Documentation] | *Cleanup environment after honeycomb testing.* @@ -73,6 +74,7 @@ | | ... | *Example:* | | ... | | ... | \| Clear persisted Honeycomb configuration \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | @{duts} | | Clear persisted Honeycomb config | @{duts} @@ -86,14 +88,34 @@ | | ... | | ... | \| Restart Honeycomb and VPP and clear persisted configuration \ | | ... | \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | Stop Honeycomb service on DUTs | ${node} | | Clear persisted Honeycomb configuration | ${node} | | Setup DUT | ${node} +| | Sleep | 10s | Wait 10sec so VPP is up for sure. | | Configure Honeycomb service on DUTs | ${node} | Restart Honeycomb and VPP -| | [Documentation] | Restarts Honeycomb service and wait until it starts up. +| | [Documentation] | Stops the Honeycomb service and verifies it is stopped. +| | ... | Then restarts VPP, starts Honeycomb again and verifies it is running. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Restart Honeycomb and VPP \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Stop Honeycomb service on DUTs | ${node} +| | Setup DUT | ${node} +| | Sleep | 10s | Wait 10sec so VPP is up for sure. +| | Configure Honeycomb service on DUTs | ${node} + +| Restart Honeycomb and VPP in performance test +| | [Documentation] | Stops Honeycomb and VPP and verifies HC is stopped. +| | ... | Then restarts VPP, starts Honeycomb again and verifies it is running. | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary @@ -101,10 +123,15 @@ | | ... | *Example:* | | ... | | ... | \| Restart Honeycomb and VPP \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | Stop Honeycomb service on DUTs | ${node} +| | Stop VPP service on DUT | ${node} | | Setup DUT | ${node} +| | Sleep | 10s | Wait 10sec so VPP is up for sure. | | Configure Honeycomb service on DUTs | ${node} +| | Wait until keyword succeeds | 2min | 16sec +| | ... | Check honeycomb startup state | ${node} | Archive Honeycomb log file | | [Documentation] | Copy honeycomb.log file from Honeycomb node\ @@ -112,12 +139,14 @@ | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary +| | ... | - perf - Running on performance testbed? Yes/no Type: boolean | | ... | | ... | *Example:* | | ... | | ... | \| Archive Honeycomb log file \| ${nudes['DUT1']} \| -| | [Arguments] | ${node} -| | Archive Honeycomb log | ${node} +| | ... +| | [Arguments] | ${node} | ${perf}=${False} +| | Archive Honeycomb log | ${node} | ${perf} | Configure ODL Client Service On DUT | | [Documentation] | Configure and start ODL client, then repeatedly check if @@ -131,6 +160,7 @@ | | ... | | ... | \| Configure ODL Client Service on DUT \| ${nodes['DUT1']} \ | | ... | \| carbon-SR1 \| +| | ... | | [Arguments] | ${node} | ${odl_name} | | Copy ODL Client | ${node} | ${odl_name} | /mnt/common | /tmp | | Setup ODL Client | ${node} | /tmp @@ -153,6 +183,7 @@ | | ... | *Example:* | | ... | | ... | \| Configure Honeycomb for functional testing \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | Configure Restconf binding address | ${node} | | Configure Log Level | ${node} | TRACE @@ -172,6 +203,7 @@ | | ... | *Example:* | | ... | | ... | \| Configure ODL Client for functional testing \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | ${use_odl_client}= | Get Variable Value | ${HC_ODL} | | Run Keyword If | '${use_odl_client}' != '${NONE}' @@ -192,6 +224,7 @@ | | ... | *Example:* | | ... | | ... | \| Set Up Honeycomb Functional Test Suite \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | Setup DUT | ${node} | | Configure all TGs for traffic script @@ -209,14 +242,17 @@ | | ... | *Example:* | | ... | | ... | \| Tear Down Honeycomb Functional Test Suite \| ${nodes['DUT1']} \| +| | ... | | [Arguments] | ${node} | | ${use_odl_client}= | Get Variable Value | ${HC_ODL} | | Run Keyword If | '${use_odl_client}' != '${NONE}' | | ... | Run Keywords -| | ... | Stop ODL Client | ${node} | /tmp -| | ... | ${use_odl_client}= | Set Variable | ${NONE} -| | ... | Set Global Variable | ${use_odl_client} +| | ... | Stop ODL Client | ${node} | /tmp | AND +| | ... | Wait until keyword succeeds | 2min | 15sec +| | ... | Check ODL shutdown state | ${node} | AND +| | ... | Set Global Variable | ${use_odl_client} | ${NONE} | | Stop Honeycomb service on DUTs | ${node} +| | Stop VPP Service on DUT | ${node} | Enable Honeycomb Feature | | [Documentation] | Enable the specified feature in Honeycomb configuration. @@ -228,6 +264,7 @@ | | ... | *Example:* | | ... | | ... | \| Enable Honeycomb Feature \| ${nodes['DUT1']} \| NSH \| +| | ... | | [arguments] | ${node} | ${feature} | | Manage Honeycomb Features | ${node} | ${feature} @@ -241,5 +278,50 @@ | | ... | *Example:* | | ... | | ... | \| Disable Honeycomb Feature \| ${nodes['DUT1']} \| NSH \| +| | ... | | [arguments] | ${node} | ${feature} -| | Manage Honeycomb Features | ${node} | ${feature} | disable=${True} \ No newline at end of file +| | Manage Honeycomb Features | ${node} | ${feature} | disable=${True} + +| Stop VPP Service on DUT +| | [Documentation] | Stop the VPP service on the specified node. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Stop VPP Service on DUT \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Stop VPP Service | ${node} + +| Honeycomb Performance Suite Setup Generic +| | [Documentation] | Generic test suite setup for Honeycomb performance tests. +| | ... | Performs multiple attempts to start Honeycomb+VPP stack. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Honeycomb Performance Suite Setup Generic \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Wait until keyword succeeds | 8min | 2min +| | ... | Restart Honeycomb and VPP in Performance test | ${node} + +| Honeycomb Performance Suite Teardown Generic +| | [Documentation] | Generic test suite teardown for Honeycomb performance +| | ... | tests. Logs CPU usage before stopping Honeycomb. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Honeycomb Performance Suite Teardown Generic \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Log Honeycomb and VPP process distribution on cores | ${node} +| | Stop Honeycomb service on DUTs | ${node} +| | Stop VPP Service on DUT | ${node}