diff --git a/.gitignore b/.gitignore index e0eeb5941..4a39e651d 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ run_tests.log tests/ .quantum-venv/ .venv/ +quantum/vcsversion.py diff --git a/setup.py b/setup.py index 242f83208..89c3a0619 100644 --- a/setup.py +++ b/setup.py @@ -6,11 +6,37 @@ except ImportError: from setuptools import setup, find_packages import sys -import version +import os +import subprocess +from quantum import version + + +def run_git_command(cmd): + output = subprocess.Popen(["/bin/sh", "-c", cmd], + stdout=subprocess.PIPE) + return output.communicate()[0].strip() + + +if os.path.isdir('.git'): + branch_nick_cmd = 'git branch | grep -Ei "\* (.*)" | cut -f2 -d" "' + branch_nick = run_git_command(branch_nick_cmd) + revid_cmd = "git --no-pager log --max-count=1 | cut -f2 -d' ' | head -1" + revid = run_git_command(revid_cmd) + revno_cmd = "git --no-pager log --oneline | wc -l" + revno = run_git_command(revno_cmd) + with open("quantum/vcsversion.py", 'w') as version_file: + version_file.write(""" +# This file is automatically generated by setup.py, So don't edit it. :) +version_info = { + 'branch_nick': '%s', + 'revision_id': '%s', + 'revno': %s +} +""" % (branch_nick, revid, revno)) Name = 'quantum' Url = "https://launchpad.net/quantum" -Version = version.get_git_version() +Version = version.canonical_version_string() License = 'Apache License 2.0' Author = 'Netstack' AuthorEmail = 'netstack@lists.launchpad.net'