script/revision.py (14 lines of code) (raw):
#! /usr/bin/env python3
import common, os, re, subprocess, sys
def revision():
os.chdir(common.root)
desc = subprocess.check_output(["git", "describe", "--tags", "--first-parent", "--match", "*.*.0"], cwd = os.path.dirname(__file__)).decode("utf-8")
match = re.match("([0-9]+.[0-9]+).0-([0-9]+)-[a-z0-9]+", desc)
if match:
return match.group(1) + "." + match.group(2)
match = re.match("([0-9]+.[0-9]+).0", desc)
if match:
return match.group(1) + ".0"
raise Exception("Can’t parse revision: " + desc)
if __name__ == '__main__':
print(revision())
sys.exit(0)