summaryrefslogtreecommitdiffstats
path: root/version.py
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2013-06-06 20:42:42 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2013-06-06 23:29:05 +0200
commit170f29cb034470560ca66b05d39a4e0961a6536e (patch)
tree55da82c0c10f1068d80b63aa34b9381efc915035 /version.py
downloadhostinfo-maintainer-170f29cb034470560ca66b05d39a4e0961a6536e.tar.gz
hostinfo-maintainer-170f29cb034470560ca66b05d39a4e0961a6536e.tar.bz2
hostinfo-maintainer-170f29cb034470560ca66b05d39a4e0961a6536e.zip
initial commit0.1.0
Diffstat (limited to 'version.py')
-rw-r--r--version.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/version.py b/version.py
new file mode 100644
index 0000000..a4c7ed6
--- /dev/null
+++ b/version.py
@@ -0,0 +1,41 @@
+# -*- coding: utf-8 -*-
+# To use this script, simply import it your setup.py file, and use the
+# results of get_git_version() as your package version:
+#
+# from version import *
+#
+# setup(
+# version=get_git_version(),
+# .
+# .
+# .
+# )
+
+__all__ = ["get_git_version"]
+
+import os
+import re
+from subprocess import Popen, PIPE
+
+OWN_DIR = os.path.dirname(os.path.abspath(os.path.realpath(__file__)))
+
+def call_git_describe(abbrev=4):
+ try:
+ p = Popen(['git', 'describe', '--abbrev=%d' % abbrev, '--tags'],
+ cwd=OWN_DIR, stdout=PIPE, stderr=PIPE)
+ p.stderr.close()
+ line = p.stdout.readlines()[0]
+ return line.strip()
+
+ except:
+ return None
+
+def get_git_version(abbrev=4):
+ version = call_git_describe(abbrev)
+ if version is None:
+ raise ValueError("Cannot find the version number!")
+
+ return re.sub('^debian/', '', version)
+
+if __name__ == "__main__":
+ print get_git_version()