X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Flibraries%2FExaBgpLib.robot;h=ef110c9ee5c58d7bdd0cde97bf022689321427f7;hb=94651ca9711d8eb316721775561e815830bc6c7e;hp=6173e89ae75d15a861933b87abc7f8dfffd55881;hpb=4b44cbe83f204b684a40b702f1b16c347d84b5e6;p=integration%2Ftest.git diff --git a/csit/libraries/ExaBgpLib.robot b/csit/libraries/ExaBgpLib.robot index 6173e89ae7..ef110c9ee5 100644 --- a/csit/libraries/ExaBgpLib.robot +++ b/csit/libraries/ExaBgpLib.robot @@ -15,8 +15,10 @@ Documentation Robot keyword library (Resource) for handling the ExaBgp tool. Library SSHLibrary Resource ${CURDIR}/SSHKeywords.robot Resource ${CURDIR}/RemoteBash.robot +Resource ${CURDIR}/BGPcliKeywords.robot *** Variables *** +${EXABGP_KILL_COMMAND} ps axf | grep exabgp | grep -v grep | awk '{print \"kill -9 \" $1}' | sh ${CMD} env exabgp.tcp.port=1790 exabgp --debug ${PEER_CHECK_URL} /restconf/operational/bgp-rib:bgp-rib/rib/example-bgp-rib/peer/bgp:%2F%2F @@ -40,16 +42,24 @@ Stop_ExaBgp BuiltIn.Log ${output} SSHKeywords.Virtual_Env_Deactivate_On_Current_Session log_output=${True} +Stop_All_ExaBgps + [Documentation] Sends kill command to stop all exabgps running + ${output} SSHLibrary.Read + BuiltIn.Log ${output} + ${output} SSHLibrary.Write ${EXABGP_KILL_COMMAND} + BuiltIn.Log ${output} + Start_ExaBgp_And_Verify_Connected [Arguments] ${cfg_file} ${session} ${exabgp_ip} ${connection_retries}=${3} [Documentation] Starts the ExaBgp and verifies its connection. The verification is done by checking the presence ... of the peer in the bgp rib. - : FOR ${idx} IN RANGE ${connection_retries} - \ Start_ExaBgp ${cfg_file} - \ ${status} ${value}= BuiltIn.Run_Keyword_And_Ignore_Error BuiltIn.Wait_Until_Keyword_Succeeds 3x 3s - \ ... Verify_ExaBgps_Connection ${session} ${exabgp_ip} connected=${True} - \ BuiltIn.Run_Keyword_Unless "${status}" == "PASS" Stop_ExaBgp - \ BuiltIn.Return_From_Keyword_If "${status}" == "PASS" + FOR ${idx} IN RANGE ${connection_retries} + Start_ExaBgp ${cfg_file} + ${status} ${value}= BuiltIn.Run_Keyword_And_Ignore_Error BuiltIn.Wait_Until_Keyword_Succeeds 3x 3s + ... Verify_ExaBgps_Connection ${session} ${exabgp_ip} connected=${True} + BuiltIn.Run_Keyword_Unless "${status}" == "PASS" Stop_ExaBgp + BuiltIn.Return_From_Keyword_If "${status}" == "PASS" + END BuiltIn.Fail Unable to connect ExaBgp to ODL Verify_ExaBgps_Connection @@ -65,12 +75,13 @@ Upload_ExaBgp_Cluster_Config_Files [Documentation] Uploads exabgp config files. SSHLibrary.Put_File ${bgp_var_folder}/${cfg_file} . @{cfgfiles}= SSHLibrary.List_Files_In_Directory . *.cfg - : FOR ${cfgfile} IN @{cfgfiles} - \ SSHLibrary.Execute_Command sed -i -e 's/EXABGPIP/${TOOLS_SYSTEM_IP}/g' ${cfgfile} - \ SSHLibrary.Execute_Command sed -i -e 's/ODLIP1/${ODL_SYSTEM_1_IP}/g' ${cfgfile} - \ SSHLibrary.Execute_Command sed -i -e 's/ODLIP2/${ODL_SYSTEM_2_IP}/g' ${cfgfile} - \ SSHLibrary.Execute_Command sed -i -e 's/ODLIP3/${ODL_SYSTEM_3_IP}/g' ${cfgfile} - \ SSHLibrary.Execute_Command sed -i -e 's/ROUTEREFRESH/disable/g' ${cfgfile} - \ SSHLibrary.Execute_Command sed -i -e 's/ADDPATH/disable/g' ${cfgfile} - \ ${stdout}= SSHLibrary.Execute_Command cat ${cfgfile} - \ Log ${stdout} + FOR ${cfgfile} IN @{cfgfiles} + SSHLibrary.Execute_Command sed -i -e 's/EXABGPIP/${TOOLS_SYSTEM_IP}/g' ${cfgfile} + SSHLibrary.Execute_Command sed -i -e 's/ODLIP1/${ODL_SYSTEM_1_IP}/g' ${cfgfile} + SSHLibrary.Execute_Command sed -i -e 's/ODLIP2/${ODL_SYSTEM_2_IP}/g' ${cfgfile} + SSHLibrary.Execute_Command sed -i -e 's/ODLIP3/${ODL_SYSTEM_3_IP}/g' ${cfgfile} + SSHLibrary.Execute_Command sed -i -e 's/ROUTEREFRESH/disable/g' ${cfgfile} + SSHLibrary.Execute_Command sed -i -e 's/ADDPATH/disable/g' ${cfgfile} + ${stdout}= SSHLibrary.Execute_Command cat ${cfgfile} + Log ${stdout} + END