Library ${CURDIR}/../../../libraries/HsfJson/hsf_json.py
Resource ${CURDIR}/../../../libraries/ConfigViaRestconf.robot
Resource ${CURDIR}/../../../libraries/FailFast.robot
+Resource ${CURDIR}/../../../libraries/NexusKeywords.robot
Resource ${CURDIR}/../../../libraries/PcepOperations.robot
Resource ${CURDIR}/../../../libraries/WaitForFailure.robot
Variables ${CURDIR}/../../../variables/Variables.py
[Documentation] Check state of disptcher configuration module, apply workaround if needed.
... This test case should not be failing, failure indicates Bug 3753 was not fixed enough yet.
... For more details, see https://bugs.opendaylight.org/show_bug.cgi?id=4267#c2
- ConfigViaRestconf.Verify_Json_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}pcep_dispatcher_module
- [Teardown] BuiltIn.Run_Keyword_If_Test_Failed ConfigViaRestconf.Put_Xml_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}pcep_dispatcher_module
+ ... As dispatcher configuration differs between Lithium and Beryllium, two checks and two workarounds are needed.
+ ${success}= BuiltIn.Run_Keyword_And_Return_Status ConfigViaRestconf.Verify_Json_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}pcep_dispatcher_module
+ BuiltIn.Pass_Execution_If ${success} Bug 4267 not present, Beryllium data.
+ ${success}= BuiltIn.Run_Keyword_And_Return_Status ConfigViaRestconf.Verify_Json_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}lithium_pcep_dispatcher_module
+ BuiltIn.Pass_Execution_If ${success} Bug 4267 not present, Lithium data.
+ ${success}= BuiltIn.Run_Keyword_And_Return_Status ConfigViaRestconf.Put_Xml_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}pcep_dispatcher_module
+ BuiltIn.Run_Keyword_If ${success} BuiltIn.Fail Bug 4267 present, Beryllium workaround successful.
+ ${success}= BuiltIn.Run_Keyword_And_Return_Status ConfigViaRestconf.Put_Xml_Template_Folder_Config_Via_Restconf ${directory_with_template_folders}${/}lithium_pcep_dispatcher_module
+ BuiltIn.Run_Keyword_If ${success} BuiltIn.Fail Bug 4267 present, Lithium workaround successful.
+ BuiltIn.Fail Bug 4267 probably present. No workaround succeeded, so Bug 4491 is probably present too.
+ [Teardown] FailFast.Do_Not_Start_Failing_If_This_Failed
Topology_Unauthorized_2
[Documentation] The same logic as Topology_Unauthorized_1 as no password was provided to ODL.
Topology_Intercondition
[Documentation] Compare pcep-topology to filled one, which includes a tunnel from pcc-mock.
- [Tags] xfail
BuiltIn.Wait_Until_Keyword_Succeeds 10s 1s Compare_Topology ${default_json} 050_Intercondition.json
Update_Delegated
[Documentation] Create SSH session to Mininet machine, prepare HTTP client session to Controller.
... Figure out latest pcc-mock version and download it from Nexus to Mininet.
... Also, delete and create directories for json diff handling.
- SSHLibrary.Open_Connection ${MININET}
- SSHLibrary.Login_With_Public_Key ${MININET_USER} ${USER_HOME}/.ssh/${SSH_KEY} any
+ NexusKeywords.Initialize_Artifact_Deployment_And_Usage
${current_connection}= SSHLibrary.Get_Connection
${current_prompt}= BuiltIn.Set_Variable ${current_connection.prompt}
BuiltIn.Log ${current_prompt}
BuiltIn.Set_Suite_Variable ${prompt} ${current_prompt}
RequestsLibrary.Create_Session ses http://${CONTROLLER}:${RESTCONFPORT}${OPERATIONAL_TOPO_API} auth=${AUTH}
- # TODO: See corresponding bgpuser TODO.
- ${urlbase}= BuiltIn.Set_Variable ${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/bgpcep/pcep-pcc-mock
- ${version}= SSHLibrary.Execute_Command curl ${urlbase}/maven-metadata.xml | grep latest | cut -d '>' -f 2 | cut -d '<' -f 1
- # TODO: Use RequestsLibrary and String instead of curl and bash utilities?
- BuiltIn.Log ${version}
- ${namepart}= SSHLibrary.Execute_Command curl ${urlbase}/${version}/maven-metadata.xml | grep value | head -n 1 | cut -d '>' -f 2 | cut -d '<' -f 1
- BuiltIn.Log ${namepart}
- BuiltIn.Set_Suite_Variable ${filename} pcep-pcc-mock-${namepart}-executable.jar
- BuiltIn.Log ${filename}
- ${response}= SSHLibrary.Execute_Command wget -q -N ${urlbase}/${version}/${filename} 2>&1
- BuiltIn.Log ${response}
+ ${name}= NexusKeywords.Deploy_Test_Tool bgpcep/pcep-pcc-mock
+ BuiltIn.Set_Suite_Variable ${filename} ${name}
OperatingSystem.Remove_Directory ${directory_for_expected_responses} recursive=True
OperatingSystem.Remove_Directory ${directory_for_actual_responses} recursive=True
# The previous suite may have been using the same directories.