... afterwards unisolate old leader.
@{running_members} = ClusterManagement.Isolate_Member_From_List_Or_All ${controller_index}
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${running_members} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 240 1 ClusterManagement.Sync_Status_Should_Be_False ${controller_index}
BuiltIn.Wait Until Keyword Succeeds 240 1 SxpClusterLib.Ip Addres Should Not Be Routed To Follower ${MAC_ADDRESS_TABLE} ${VIRTUAL_IP} ${controller_index}
${running_member} = Collections.Get From List ${running_members} 0
BuiltIn.Wait Until Keyword Succeeds 240 1 SxpClusterLib.Ip Addres Should Be Routed To Follower ${MAC_ADDRESS_TABLE} ${VIRTUAL_IP} ${active_follower}
ClusterManagement.Flush_Iptables_From_List_Or_All
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${EMPTY} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
[Documentation] Disconnect SXP cluster topology
ClusterManagement.Flush_Iptables_From_List_Or_All
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${EMPTY} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
SxpLib.Delete Node ${DEVICE_NODE_ID} session=${DEVICE_SESSION}
SxpLib.Delete Node ${CLUSTER_NODE_ID} session=${CONTROLLER_SESSION}
[Documentation] Isolate cluster node specified by ${controller_index} and find new owner
@{running_members} = ClusterManagement.Isolate_Member_From_List_Or_All ${controller_index}
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${running_members} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 240 1 ClusterManagement.Sync_Status_Should_Be_False ${controller_index}
BuiltIn.Wait Until Keyword Succeeds 240 1 SxpClusterLib.Ip Addres Should Not Be Routed To Follower ${MAC_ADDRESS_TABLE} ${VIRTUAL_IP} ${controller_index}
${running_member} = Collections.Get From List ${running_members} 0
[Documentation] Isolate one of cluster nodes and perform check that Device is still connected afterwards reverts isolation
${running_members} = ClusterManagement.Isolate_Member_From_List_Or_All ${controller_index}
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${running_members} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 240 1 ClusterManagement.Sync_Status_Should_Be_False ${controller_index}
BuiltIn.Wait Until Keyword Succeeds 60 1 SxpClusterLib.Check Device is Connected ${DEVICE_NODE_ID} session=${DEVICE_SESSION}
ClusterManagement.Flush_Iptables_From_List_Or_All
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${EMPTY} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 60 1 SxpClusterLib.Check Device is Connected ${DEVICE_NODE_ID} session=${DEVICE_SESSION}
\ SxpLib.Add Bindings ${i+1}0 ${i+1}0.${i+1}0.${i+1}0.${i+1}0/32 node=${INADDR_ANY} session=ClusterManagement__session_${owner_controller}
@{running_members} = ClusterManagement.Isolate_Member_From_List_Or_All ${controller_index}
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${running_members} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 240 1 ClusterManagement.Sync_Status_Should_Be_False ${controller_index}
${running_member} = Collections.Get From List ${running_members} 0
${owner_controller} = SxpClusterLib.Get Owner Controller ${running_member}
\ SxpLib.Delete Bindings ${i+1}0 ${i+1}0.${i+1}0.${i+1}0.${i+1}0/32 node=${INADDR_ANY} session=ClusterManagement__session_${owner_controller}
ClusterManagement.Flush_Iptables_From_List_Or_All
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${EMPTY} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 30 1 Check Bindings Does Not Exist ${owner_controller}
Check Bindings Exist
[Documentation] Isolate one of cluster nodes and perform check that device is connected
@{running_members} = ClusterManagement.Isolate_Member_From_List_Or_All ${controller_index}
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${running_members} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
${running_member} = Collections.Get From List ${running_members} 0
BuiltIn.Set Test Variable ${RUNNING_MEMBER} ${running_member}
BuiltIn.Wait Until Keyword Succeeds 240 1 ClusterManagement.Sync_Status_Should_Be_False ${controller_index}
[Documentation] Un-Isolate one of cluster nodes and perform check that device is connected
ClusterManagement.Flush_Iptables_From_List_Or_All
BuiltIn.Wait_Until_Keyword_Succeeds 60 1 ClusterManagement.Verify_Members_Are_Ready member_index_list=${EMPTY} verify_cluster_sync=True verify_restconf=True
- ... verify_system_status=False service_list=@{EMPTY}
+ ... verify_system_status=False service_list=${EMPTY_LIST}
BuiltIn.Wait Until Keyword Succeeds 60 1 SxpClusterLib.Check Device is Connected ${DEVICE_NODE_ID} session=${DEVICE_SESSION}
Check Bindings
${DEFAULT_TIMEOUT_HTTP} 5 # Used for HTTP connections
${DELETE_DASHBOARDRECORD} /restconf/operations/dashboardrule:delete-dashboard # FIXME: Move to a separate Centinel-related Resource and add description.
${ELASTICPORT} 9200 # Port to use when interacting with ElasticSearch. FIXME: Hide into a specific Resource.
+@{EMPTY_LIST} # Empty list for KWs with list parameters, see: https://github.com/robotframework/robotframework/issues/2243
${ENABLE_GLOBAL_TEST_DEADLINES} True # Some suites need this to avoid getting stuck. FIXME: Move to the Resource which uses this.
${ESCAPE_CHARACTER} \x1b # A more readable alias to the special escape character.
${FAIL_ON_EXCEPTIONS} False # global flag (can/should be tweak on pybot command line) which suites can use if they are validating exceptions to pass/fail tests on