Add a User-Agent string to the API request (#38587)

pull/40090/head
Rémy Léone 6 years ago committed by Adam Miller
parent 19977e80f0
commit afc196acf1

@ -1,4 +1,5 @@
import json
import sys
from ansible.module_utils.urls import fetch_url
@ -33,9 +34,12 @@ class Response(object):
class ScalewayAPI(object):
def __init__(self, module, headers, base_url):
def __init__(self, module, base_url, headers=None):
self.module = module
self.headers = headers
self.headers = {'User-Agent': self.get_user_agent_string(module),
'Content-type': 'application/json'}
if headers is not None:
self.headers.update(headers)
self.base_url = base_url
def _url_builder(self, path):
@ -59,6 +63,10 @@ class ScalewayAPI(object):
return Response(resp, info)
@staticmethod
def get_user_agent_string(module):
return "ansible %s Python %s" % (module.ansible_version, sys.version.split(' ')[0])
def get(self, path, data=None, headers=None):
return self.send('GET', path, data, headers)

@ -584,8 +584,7 @@ def core(module):
}
compute_api = ScalewayAPI(module=module,
headers={'X-Auth-Token': api_token,
'Content-type': 'application/json'},
headers={'X-Auth-Token': api_token},
base_url=SCALEWAY_LOCATION[region]["api_endpoint"])
changed, summary = state_strategy[wished_server["state"]](compute_api=compute_api, wished_server=wished_server)

@ -109,8 +109,7 @@ def core(module):
ssh_pub_key = module.params['ssh_pub_key']
state = module.params["state"]
account_api = ScalewayAPI(module,
headers={'X-Auth-Token': api_token,
'Content-type': 'application/json'},
headers={'X-Auth-Token': api_token},
base_url=module.params["base_url"])
response = account_api.get('organizations')

Loading…
Cancel
Save