def make_request()

in ec2stack/providers/cloudstack/requester.py [0:0]


def make_request(args):
    """
    Makes a request to Cloudstack.

    @param args: Request Payload.
    @return: Response.
    """
    args['apikey'] = helpers.get('AWSAccessKeyId')
    args['response'] = 'json'

    secretkey = helpers.get_secretkey()

    request_url = _generate_request_url(args, secretkey)

    response = requests.get(request_url)

    response_data = json.loads(
        response.text,
        object_hook=helpers.normalize_dict_keys
    )
    current_app.logger.debug(
        'request url:' + str(request_url) +
        'status code: ' + str(response.status_code) +
        json.dumps(response_data, indent=4, separators=(',', ': '))
    )

    if response.status_code in [401, 432]:
        abort(400)
    else:
        return response_data