2 Documentation The main interface for interacting with OOF: OSDF and Homing Service
3 Library RequestsLibrary
4 Library ONAPLibrary.Utilities
5 Library OperatingSystem
9 Library ONAPLibrary.JSON
10 Library ONAPLibrary.OOF WITH NAME OOF
11 Library ONAPLibrary.Templating WITH NAME Templating
12 Resource global_properties.robot
15 ${OOF_HOMING_HEALTH_CHECK_PATH} /v1/plans/healthcheck
16 ${OOF_OSDF_HEALTH_CHECK_PATH} /api/oof/v1/healthcheck
18 ${OOF_HOMING_PLAN_FOLDER} robot/assets/oof/optf-has
19 ${OOF_OSDF_TEMPLATE_FOLDER} robot/assets/oof/optf-osdf
21 ${OOF_HOMING_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_HOMING_IP_ADDR}:${GLOBAL_OOF_HOMING_SERVER_PORT}
22 ${OOF_OSDF_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR}:${GLOBAL_OOF_SNIRO_SERVER_PORT}
23 ${OOF_OSDF_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_HOMING_IP_ADDR}:${GLOBAL_OOF_HOMING_SERVER_PORT}
27 Run OOF-Homing Health Check
28 [Documentation] Runs OOF-Homing Health check
29 ${resp}= Run OOF-Homing Get Request ${OOF_HOMING_HEALTH_CHECK_PATH}
30 Should Be Equal As Integers ${resp.status_code} 200
32 Run OOF-Homing Get Request
33 [Documentation] Runs OOF-Homing Get request
34 [Arguments] ${data_path}
35 ${session}= Create Session session ${OOF_HOMING_ENDPOINT}
36 ${resp}= Get Request session ${data_path}
37 Should Be Equal As Integers ${resp.status_code} 200
38 Log Received response from OOF-Homing ${resp.text}
41 RUN OOF-Homing SendPlanWithWrongVersion
42 [Documentation] It sends a POST request to conductor
43 ${session}= Create Session optf-cond ${OOF_HOMING_ENDPOINT}
44 ${data}= Get Binary File ${OOF_HOMING_PLAN_FOLDER}${/}plan_with_wrong_version.json
45 ${auth}= Create List ${GLOBAL_OOF_HOMING_USERNAME} ${GLOBAL_OOF_HOMING_PASSWORD}
46 ${session}= Create Session session ${OOF_HOMING_ENDPOINT} auth=${auth}
47 &{headers}= Create Dictionary Content-Type=application/json Accept=application/json
48 ${resp}= Post Request optf-cond /v1/plans data=${data} headers=${headers}
49 Log *********************
50 Log response = ${resp}
51 Log body = ${resp.text}
52 ${generatedPlanId}= Convert To String ${resp.json()['id']}
53 Set Global Variable ${generatedPlanId}
54 Log generatedPlanId = ${generatedPlanId}
55 Should Be Equal As Integers ${resp.status_code} 201
56 Sleep 10s Wait Plan Resolution
58 Run OOF-OSDF Health Check
59 [Documentation] Runs OOF-OSDF Health check
60 ${resp}= Run OOF-OSDF Get Request ${OOF_OSDF_HEALTH_CHECK_PATH}
61 Should Be Equal As Integers ${resp.status_code} 200
63 Run OOF-OSDF Get Request
64 [Documentation] Runs OOF-OSDF Get request
65 [Arguments] ${data_path}
66 ${session}= Create Session session ${OOF_OSDF_ENDPOINT}
67 ${resp}= Get Request session ${data_path}
68 Should Be Equal As Integers ${resp.status_code} 200
69 Log Received response from OOF-OSDF ${resp.text}
72 Run OOF-OSDF Post Request
73 [Documentation] Runs a scheduler POST request
74 [Arguments] ${data_path} ${auth} ${data}={}
76 ${session}= Create Session session ${OOF_OSDF_ENDPOINT} auth=${auth}
77 ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
78 ${resp}= Post Request session ${data_path} headers=${headers} data=${data}
79 Log Received response from osdf ${resp.text}
82 Run OOF-OSDF Post Homing
83 [Documentation] Runs a osdf homing request
84 ${auth}= Create List ${GLOBAL_OOF_OSDF_USERNAME} ${GLOBAL_OOF_OSDF_PASSWORD}
85 ${data}= Get Binary File ${OOF_OSDF_TEMPLATE_FOLDER}${/}placement_request.json
86 ${resp}= Run OOF-OSDF Post Request /api/oof/placement/v1 auth=${auth} data=${data}
87 Should Be Equal As Strings ${resp.status_code} 204
89 Run OOF-OSDF Post PCI-OPT
90 [Documentation] Runs a osdf PCI-OPT request
91 ${auth}= Create List ${GLOBAL_OOF_PCI_USERNAME} ${GLOBAL_OOF_PCI_PASSWORD}
92 ${data}= Get Binary File ${OOF_OSDF_TEMPLATE_FOLDER}${/}pci-opt-request.json
93 ${resp}= Run OOF-OSDF Post Request /api/oof/pci/v1 auth=${auth} data=${data}
94 Should Be Equal As Strings ${resp.status_code} 204