aboutsummaryrefslogtreecommitdiffstats
path: root/gitrefinery/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'gitrefinery/utils.py')
-rw-r--r--gitrefinery/utils.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/gitrefinery/utils.py b/gitrefinery/utils.py
new file mode 100644
index 0000000..ce4cd97
--- /dev/null
+++ b/gitrefinery/utils.py
@@ -0,0 +1,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