aboutsummaryrefslogtreecommitdiffstats
path: root/gitrefinery/utils.py
blob: ce4cd9751ba9edd0af466ca7032aebfd82b06b55 (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
31
32
33
34
35
36
37
# Utilities for git-refinery-web
#
# Copyright (C) 2014 Intel Corporation
# Author: Paul Eggleton <paul.eggleton@linux.intel.com>
#
# Licensed under the MIT license, see COPYING.MIT for details

import sys
import os.path
import logging
import git

def setup_django():
    import django
    # Get access to our Django model
    newpath = os.path.abspath(os.path.dirname(__file__) + '/..')
    sys.path.append(newpath)
    os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
    django.setup()

def logger_create(name):
    logger = logging.getLogger(name)
    loggerhandler = logging.StreamHandler()
    loggerhandler.setFormatter(logging.Formatter("%(levelname)s: %(message)s"))
    logger.addHandler(loggerhandler)
    logger.setLevel(logging.INFO)
    return logger

def git_get_tags(repopath):
    repo = git.Repo(repopath)
    assert repo.bare == False

    tags = {}
    for tag in repo.tags:
        tags[tag.name] = tag.commit.hexsha

    return tags