aboutsummaryrefslogtreecommitdiffstats
path: root/moon_engine/moon_engine/__init__.py
blob: 0c44540e34cb073c7f46d22d1f8ab7164fc6e68c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Software Name: MOON

# Version: 5.4

# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors
# SPDX-License-Identifier: Apache-2.0

# This software is distributed under the 'Apache License 2.0',
# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt'
# or see the "LICENSE" file for more details.



__version__ = "0.8"


def get_api_key(url, user, password):
    import requests
    from requests.auth import HTTPBasicAuth
    _url = url + "/auth"
    req = requests.get(_url, auth=HTTPBasicAuth(user, password))
    if req.status_code != 200:
        raise Exception("Cannot authenticate on {} with {}".format(_url, user))
    return req.content.decode("utf-8").strip('"')


def serve(hostname="127.0.0.1", port=8080):
    import hug
    import moon_engine.server
    hug.API(moon_engine.server).http.serve(host=hostname, port=port, display_intro=False)