2 Documentation Utils for Restconf operations for GBP
3 Library RequestsLibrary
4 Library OperatingSystem
6 Variables ../../variables/Variables.py
7 Resource ../Utils.robot
11 [Arguments] ${OPER_ENDPOINTS_PATH}
12 [Documentation] Unregister Endpoints Endpoints from ODL
13 ${result} = RequestsLibrary.Get session ${OPER_ENDPOINTS_PATH}
14 ${json_result} = json.loads ${result.text}
15 Pass Execution If ${json_result['endpoints']}=={} No Endpoints available
16 ${L2_ENDPOINTS} = Set Variable ${json_result['endpoints']['endpoint']}
17 ${L3_ENDPOINTS} = Set Variable ${json_result['endpoints']['endpoint-l3']}
19 Unregister L2Endpoints ${L2_ENDPOINTS}
21 Unregister L3Endpoints ${L3_ENDPOINTS}
22 ${result} = RequestsLibrary.Get session ${OPER_ENDPOINTS_PATH}
23 ${json_result} = json.loads ${result.text}
24 Should Be Empty ${json_result['endpoints']}
26 Unregister L2Endpoints
28 [Documentation] Unregister Endpoints L2Endpoints from ODL
29 : FOR ${endpoint} IN @{l2_eps}
30 \ ${l2_data} = Create L2 Endpoint JSON Data ${endpoint}
31 \ Post Elements To URI ${UNREG_ENDPOINTS_PATH} ${l2_data}
33 Unregister L3Endpoints
35 [Documentation] Unregister Endpoints L3Endpoints from ODL
36 : FOR ${endpoint} IN @{l3_eps}
37 \ ${l3_data} = Create L3 Endpoint JSON Data ${endpoint}
38 \ Post Elements To URI ${UNREG_ENDPOINTS_PATH} ${l3_data}
40 Create L2 Endpoint JSON Data
41 [Arguments] ${endpoint}
42 [Documentation] Generate the JSON data required for unregistering L2 Endpoints
43 ${data} Set Variable {"input": {"l2": [{"mac-address": "${endpoint['mac-address']}", "l2-context": "${endpoint['l2-context']}"}]}}
46 Create L3 Endpoint JSON Data
47 [Arguments] ${endpoint}
48 [Documentation] Generate the JSON data required for unregistering L3 Endpoints
49 ${data} Set Variable {"input": {"l3": [{"l3-context": "${endpoint['l3-context']}", "ip-address": "${endpoint['ip-address']}"}]}}