Clean up logic for finding git hash
Also add implementation for release scripts as well
This commit is contained in:
parent
ee3d7463f6
commit
4ff44eff7b
@ -148,13 +148,9 @@ def _git_str_subprocess(gitpath):
|
||||
if not os.path.isdir(os.path.join(gitpath, ".git")):
|
||||
return None
|
||||
try:
|
||||
# https://stackoverflow.com/questions/21017300/21017394#21017394
|
||||
commit_hash = subprocess.check_output(
|
||||
['git',
|
||||
'describe',
|
||||
'--match=NeVeRmAtCh',
|
||||
'--always',
|
||||
'--abbrev=40',
|
||||
'--dirty'],
|
||||
['git', 'describe', '--match=NeVeRmAtCh', '--always', '--dirty'],
|
||||
cwd=gitpath).decode('UTF-8').strip()
|
||||
date = subprocess.check_output(
|
||||
['git', 'show', '-s', '--format=%ci', 'HEAD'],
|
||||
|
@ -50,13 +50,14 @@ def _git_str():
|
||||
if not os.path.isdir(os.path.join(BASEDIR, ".git")):
|
||||
return None
|
||||
try:
|
||||
cid = subprocess.check_output(
|
||||
['git', 'describe', '--tags', '--dirty', '--always'],
|
||||
# https://stackoverflow.com/questions/21017300/21017394#21017394
|
||||
commit_hash = subprocess.check_output(
|
||||
['git', 'describe', '--match=NeVeRmAtCh', '--always', '--dirty'],
|
||||
cwd=BASEDIR).decode('UTF-8').strip()
|
||||
date = subprocess.check_output(
|
||||
['git', 'show', '-s', '--format=%ci', 'HEAD'],
|
||||
cwd=BASEDIR).decode('UTF-8').strip()
|
||||
return '{} ({})'.format(cid, date)
|
||||
return '{} ({})'.format(commit_hash, date)
|
||||
except (subprocess.CalledProcessError, OSError):
|
||||
return None
|
||||
|
||||
|
@ -356,9 +356,7 @@ class TestGitStrSubprocess:
|
||||
def test_real_git(self, git_repo):
|
||||
"""Test with a real git repository."""
|
||||
ret = version._git_str_subprocess(str(git_repo))
|
||||
assert ret == \
|
||||
'6e4b65a529c0ab78fb370c1527d5809f7436b8f3 ' \
|
||||
+ '(1970-01-01 01:00:00 +0100)'
|
||||
assert ret == '6e4b65a (1970-01-01 01:00:00 +0100)'
|
||||
|
||||
def test_missing_dir(self, tmpdir):
|
||||
"""Test with a directory which doesn't exist."""
|
||||
|
Loading…
Reference in New Issue
Block a user