예제 #1
0
def register_token(session):
    token = session.query(Token).first()

    if token:
        return token, False

    url = api_method_url('project_tokens/')
    headers = {'User-Agent': 'Jet Django'}
    data = {'bridge_type': 'jet_bridge', 'bridge_version': VERSION}

    r = requests.request('POST', url, headers=headers, data=data)
    success = 200 <= r.status_code < 300

    if not success:
        logging.error('Register Token request error', r.status_code, r.reason)
        return None, False

    result = r.json()

    # TODO: add serializer
    token = result['token'].replace('-', '')
    date_add = datetime.strptime(result['date_add'][:-6],
                                 '%Y-%m-%dT%H:%M:%S.%f')

    token = Token(token=token, date_add=date_add)
    session.add(token)
    session.commit()

    return token, True
예제 #2
0
def set_token(session, token):
    project_token = session.query(Token).first()
    token_clean = str(token).replace('-', '')

    if project_token:
        if project_token.token == token_clean:
            logging.info('This token is already set, ignoring')
            return

        project_token.token = token_clean
        project_token.date_add = datetime.now()
        session.commit()
        logging.info('Token changed to {}'.format(project_token.token))
    else:
        project_token = Token(token=token_clean, date_add=datetime.now())
        session.add(project_token)
        session.commit()
        logging.info('Token created {}'.format(project_token.token))