diff options
author | jf9860 <jf9860@att.com> | 2017-03-09 15:28:42 -0500 |
---|---|---|
committer | jf9860 <jf9860@att.com> | 2017-03-09 15:29:18 -0500 |
commit | 99c6329d9b5f5f83a38eb309181200b80d153949 (patch) | |
tree | b7e51225ba0ac869f4c63d0d456b6bdd90550b6d /robot/resources/openstack/openstack_common.robot | |
parent | ca5693c162ed0d019b416b5784c0ee8eaf653abf (diff) |
TEST-4 Re-factor openstack region variable
Change-Id: Iad9ef0555dbbd921e261bfa2a63806100bcf7c83
Signed-off-by: jf9860 <jf9860@att.com>
Diffstat (limited to 'robot/resources/openstack/openstack_common.robot')
-rw-r--r-- | robot/resources/openstack/openstack_common.robot | 46 |
1 files changed, 38 insertions, 8 deletions
diff --git a/robot/resources/openstack/openstack_common.robot b/robot/resources/openstack/openstack_common.robot index 6a53ab63..ef370c66 100644 --- a/robot/resources/openstack/openstack_common.robot +++ b/robot/resources/openstack/openstack_common.robot @@ -1,34 +1,47 @@ *** Settings *** Documentation The private interface for interacting with Openstack. It handles low level stuff like managing the authtoken and Openstack required fields +Library Collections Library OpenstackLibrary Library RequestsLibrary -Library UUID +Library UUID Resource ../global_properties.robot +*** Variables *** +#**************** Test Case Variables ****************** +${OPENSTACK_SERVICE_REGION} + *** Keywords *** Internal Get Openstack [Documentation] Runs an Openstack Get Request and returns the response - [Arguments] ${alias} ${service_type} ${region} ${url_ext} ${data_path}= + [Arguments] ${alias} ${service_type} ${url_ext} ${data_path}= + ${region}= Get Openstack Region + ${resp}= Internal Get Openstack With Region ${alias} ${service_type} ${region} ${url_ext} ${data_path} + [Return] ${resp} + +Internal Get Openstack With Region + [Documentation] Runs an Openstack Get Request and returns the response + [Arguments] ${alias} ${service_type} ${region} ${url_ext} ${data_path}= Log Internal Get Openstack values alias=${alias} service_type=${service_type} region=${region} url_ext=${url_ext} data_path=${data_path} ${url}= Get Openstack Service Url ${alias} ${service_type} ${region} ${uuid}= Generate UUID ${session_alias}= Catenate openstack-${uuid} - ${session}= Create Session ${session_alias} ${url}${url_ext} verify=True + ${session}= Create Session ${session_alias} ${url}${url_ext} verify=True ${token}= Get Openstack Token ${alias} ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} X-Auth-Token=${token} ${resp}= Get Request ${session_alias} ${data_path} headers=${headers} - Log Received response from openstack ${resp.text} + Log Received response from openstack ${resp.text} [Return] ${resp} Internal Post Openstack [Documentation] Runs an Openstack Post Response and returns the response - [Arguments] ${alias} ${service_type} ${region} ${url_ext} ${data_path}= ${data}= + [Arguments] ${alias} ${service_type} ${url_ext} ${data_path}= ${data}= + ${region}= Get Openstack Region Log Internal Post Openstack values alias=${alias} service_type=${service_type} region=${region} url_ext=${url_ext} data_path=${data_path} ${url}= Get Openstack Service Url ${alias} ${service_type} ${region} ${uuid}= Generate UUID ${session_alias}= Catenate openstack-${uuid} - ${session}= Create Session ${session_alias} ${url}${url_ext} verify=True + ${session}= Create Session ${session_alias} ${url}${url_ext} verify=True ${token}= Get Openstack Token ${alias} ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} X-Auth-Token=${token} ${resp}= Post Request ${session_alias} ${data_path} data=${data} headers=${headers} @@ -37,7 +50,8 @@ Internal Post Openstack Internal Delete Openstack [Documentation] Runs an Openstack Delete Request and returns the response - [Arguments] ${alias} ${service_type} ${region} ${url_ext} ${data_path}= + [Arguments] ${alias} ${service_type} ${url_ext} ${data_path}= + ${region}= Get Openstack Region Log Internal Post Openstack values alias=${alias} service_type=${service_type} region=${region} url_ext=${url_ext} data_path=${data_path} ${url}= Get Openstack Service Url ${alias} ${service_type} ${region} ${uuid}= Generate UUID @@ -47,4 +61,20 @@ Internal Delete Openstack ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} X-Auth-Token=${token} ${resp}= Delete Request ${session_alias} ${data_path} headers=${headers} Log Received response from openstack ${resp.text} - [Return] ${resp}
\ No newline at end of file + [Return] ${resp} + +Get Openstack Region + [Documentation] Returns the current openstack region test variable + ... Defaults to the openstack region of the Robot VM + Return From Keyword If len('${OPENSTACK_SERVICE_REGION}') > 0 ${OPENSTACK_SERVICE_REGION} + Dictionary Should Contain Key ${GLOBAL_VM_PROPERTIES} region + Set Test Variable ${OPENSTACK_SERVICE_REGION} ${GLOBAL_VM_PROPERTIES['region']} + Log Setting OPENSTACK_SERVICE_REGION=${OPENSTACK_SERVICE_REGION} + [Return] ${OPENSTACK_SERVICE_REGION} + +Set Openstack Region Test Variable + [Documentation] Sets the openstack service region of the current test case + ... To be used to override the service region of the Robot VM (default) + [Arguments] ${openstack_service_region} + Set Test Variable ${OPENSTACK_SERVICE_REGION} ${openstack_service_region} + |