diff --git a/build/git_info.py b/build/git_info.py index eb3401f..cf4d465 100644 --- a/build/git_info.py +++ b/build/git_info.py @@ -2,8 +2,14 @@ import subprocess -def get_git_tag(): - git_tag = os.getenv("OPENVIC_TAG", "") +def get_git_tag(prefix): + tag_var_name = f"{prefix}_TAG" + git_tag = "" + if tag_var_name in os.environ: + return os.environ[tag_var_name] + else: + git_tag = "" + if os.path.exists(".git"): try: result = subprocess.check_output(["git", "describe", "--tags", "--abbrev=0"], encoding="utf-8").strip() @@ -16,8 +22,14 @@ def get_git_tag(): return git_tag -def get_git_release(): - git_release = os.getenv("OPENVIC_RELEASE", "") +def get_git_release(prefix): + release_var_name = f"{prefix}_RELEASE" + git_release = "" + if release_var_name in os.environ: + return os.environ[release_var_name] + else: + git_release = "" + if os.path.exists(".git"): try: result = subprocess.check_output( @@ -27,7 +39,7 @@ def get_git_release(): git_release = result except (subprocess.CalledProcessError, OSError): # `gh` not found in PATH. - git_tag = get_git_tag() + git_tag = get_git_tag(prefix) if git_tag != "": git_release = git_tag @@ -89,8 +101,9 @@ def get_git_hash(): } -def get_git_info(): - return {**get_git_hash(), "git_tag": get_git_tag(), "git_release": get_git_release()} +def get_git_info(name_prefix="project"): + prefix_upper = name_prefix.upper() + return {**get_git_hash(), "git_tag": get_git_tag(prefix_upper), "git_release": get_git_release(prefix_upper)} def git_builder(target, source, env):