New facts module: Memset Memstore (#42387)

* initial commit of facts module to return usage of a Memstore cloudstorage product

* switch API wrapper to use basic auth instead of passing the api_key in the body

* add integration tests (disabled until we have a mock API to test against)

* bump ansible release version to 2.8
This commit is contained in:
Simon 2018-10-29 12:27:03 +00:00 committed by John R Barker
parent d189e58f63
commit 2d6c01005d
5 changed files with 203 additions and 4 deletions

View file

@ -60,7 +60,6 @@ def memset_api_call(api_key, api_method, payload=None):
else:
payload = payload.copy()
payload['api_key'] = api_key
# set some sane defaults
has_failed = False
msg = None
@ -71,7 +70,7 @@ def memset_api_call(api_key, api_method, payload=None):
api_uri = '{0}{1}/' . format(api_uri_base, api_method)
try:
resp = open_url(api_uri, data=data, headers=headers, method="POST")
resp = open_url(api_uri, data=data, headers=headers, method="POST", force_basic_auth=True, url_username=api_key)
response.content = resp.read().decode('utf-8')
response.status_code = resp.getcode()
except urllib_error.HTTPError as e:
@ -89,8 +88,6 @@ def memset_api_call(api_key, api_method, payload=None):
else:
msg = "Memset API returned an error ({0}, {1})." . format(response.json()['error_type'], response.json()['error'])
del payload['api_key']
if msg is None:
msg = response.json()