예제 #1
0
def _query(query):
    response = requests.get(
        URI,
        params={
            'query': query,
        },
        headers = {
            'Accept': 'application/json',
            'Authorization': 'Bearer {}'.format(TOKEN),
            'User-Agent': 'cluster-support-bot/{}'.format(__version__),
        },
        **_ADDITIONAL_REQUEST_ARGUMENTS,
    )

    if response.status_code != 200:
        raise errors.RequestException(response=response)

    data = response.json()
    if data['status'] != 'success':
        raise errors.RequestException(response=response)

    return data
예제 #2
0
    def _hydra(self, fn, endpoint, parameters=None, payload=None):
        kwargs = {
            "params": parameters,
            "headers": {
                "Accept": "application/json",
                "User-Agent": "cluster-support-bot/{}".format(__version__),
            },
            "auth": (self.username, self.password),
        }
        if payload is not None:
            kwargs["json"] = payload
        response = fn("{}/{}".format(self.url, endpoint), **kwargs)

        if response.status_code == 204:
            return

        if response.status_code != 200:
            raise errors.RequestException(response=response)

        if not response.text:
            return

        return response.json()
예제 #3
0
import os

import errors
import requests

__version__ = '0.0.1'
URI = os.environ['TELEMETRY_URI']
TOKEN = os.environ['TELEMETRY_TOKEN']

_ADDITIONAL_REQUEST_ARGUMENTS = {}
if 'TELEMETRY_CA_CERT' in os.environ:
    _response = requests.get(os.environ['TELEMETRY_CA_CERT'])
    if _response.status_code != 200:
        raise errors.RequestException(response=_response)
    _TELEMETRY_CA = '/tmp/telemetry-ca-cert.pem'
    with open(_TELEMETRY_CA, 'w') as f:
        f.write(_response.text)
    _ADDITIONAL_REQUEST_ARGUMENTS['verify'] = _TELEMETRY_CA


def _query(query):
    response = requests.get(
        URI,
        params={
            'query': query,
        },
        headers={
            'Accept': 'application/json',
            'Authorization': 'Bearer {}'.format(TOKEN),
            'User-Agent': 'cluster-support-bot/{}'.format(__version__),
        },