+++ /dev/null
-*** Settings ***
-Documentation The main interface for interacting with APP-C. It handles low level stuff like managing the http request library and APP-C required fields
-Library RequestsLibrary
-Library UUID
-Library OperatingSystem
-Library StringTemplater
-Resource global_properties.robot
-
-*** Variables ***
-${APPC_INDEX_PATH} /restconf
-${APPC_HEALTHCHECK_OPERATION_PATH} /operations/SLI-API:healthcheck
-${APPC_CREATE_MOUNTPOINT_PATH} /config/network-topology:network-topology/topology/topology-netconf/node/
-${APPC_MOUNT_XML} robot/assets/templates/appc/vnf_mount.template
-
-*** Keywords ***
-Run APPC Health Check
- [Documentation] Runs an APPC healthcheck
- ${resp}= Run APPC Post Request ${APPC_INDEX PATH}${APPC_HEALTHCHECK_OPERATION_PATH} ${None}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Be Equal As Strings ${resp.json()['output']['response-code']} 200
-
-Run APPC Post Request
- [Documentation] Runs an APPC post request
- [Arguments] ${data_path} ${data} ${content}=json
- ${auth}= Create List ${GLOBAL_APPC_USERNAME} ${GLOBAL_APPC_PASSWORD}
- Log Creating session ${GLOBAL_APPC_SERVER}
- ${session}= Create Session appc ${GLOBAL_APPC_SERVER} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/${content} Content-Type=application/${content} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Post Request appc ${data_path} data=${data} headers=${headers}
- Log Received response from appc ${resp.text}
- [Return] ${resp}
-
-Run APPC Put Request
- [Documentation] Runs an APPC post request
- [Arguments] ${data_path} ${data} ${content}=xml
- ${auth}= Create List ${GLOBAL_APPC_USERNAME} ${GLOBAL_APPC_PASSWORD}
- Log Creating session ${GLOBAL_APPC_SERVER}
- ${session}= Create Session appc ${GLOBAL_APPC_SERVER} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/${content} Content-Type=application/${content} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Put Request appc ${data_path} data=${data} headers=${headers}
- Log Received response from appc ${resp.text}
- [Return] ${resp}
-
-Create Mount Point In APPC
- [Documentation] Go tell APPC about the PGN we just spun up...
- [Arguments] ${nodeid} ${host} ${port}=${GLOBAL_PGN_PORT} ${username}=admin ${password}=admin
- ${dict}= Create Dictionary nodeid=${nodeid} host=${host} port=${port} username=${username} password=${password}
- ${template}= OperatingSystem.Get File ${APPC_MOUNT_XML}
- ${data}= Template String ${template} ${dict}
- ${resp}= Run APPC Put Request ${APPC_INDEX PATH}${APPC_CREATE_MOUNTPOINT_PATH}${nodeid} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp}
\ No newline at end of file