TRX/tools/shared/versioning.py

28 lines
575 B
Python
Raw Normal View History

from subprocess import run
2024-04-10 10:26:06 +02:00
build: change directory before calling git Fix linux build issue : https://github.com/LostArtefacts/TR1X/issues/1296 'init.c' file is generated into meson build directory. > [3/201] /usr/bin/python3 /var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init -o init.c > FAILED: init.c > /usr/bin/python3 /var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init -o init.c > fatal: not a git repository (or any parent up to mount point /var/tmp) > Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). > Traceback (most recent call last): > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 37, in <module> > main() > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 31, in main > update_init_c(output_path=args.output) > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 23, in update_init_c > new_text = get_init_c() > ^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 19, in get_init_c > return TEMPLATE.format(version=generate_version()) > ^^^^^^^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/shared/versioning.py", line 21, in generate_version > version = get_branch_version(None) > ^^^^^^^^^^^^^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/shared/versioning.py", line 5, in get_branch_version > return check_output( > ^^^^^^^^^^^^^ > File "/usr/lib/python3.11/subprocess.py", line 466, in check_output > return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.11/subprocess.py", line 571, in run > raise CalledProcessError(retcode, process.args, > subprocess.CalledProcessError: Command '['git', 'describe', '--dirty', '--always', '--abbrev=7', '--tags', '--exclude', 'latest']' returned non-zero exit status 128. Signed-off-by: Fabrice Delliaux <netbox253@gmail.com>
2024-04-11 13:18:21 +02:00
from shared.common import SRC_DIR
2024-04-10 10:26:06 +02:00
def get_branch_version(branch: str | None) -> str:
return run(
2024-04-10 10:26:06 +02:00
[
"git",
"describe",
*([branch] if branch else ["--dirty"]),
"--always",
"--abbrev=7",
"--tags",
"--exclude",
"latest",
],
build: change directory before calling git Fix linux build issue : https://github.com/LostArtefacts/TR1X/issues/1296 'init.c' file is generated into meson build directory. > [3/201] /usr/bin/python3 /var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init -o init.c > FAILED: init.c > /usr/bin/python3 /var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init -o init.c > fatal: not a git repository (or any parent up to mount point /var/tmp) > Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). > Traceback (most recent call last): > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 37, in <module> > main() > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 31, in main > update_init_c(output_path=args.output) > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 23, in update_init_c > new_text = get_init_c() > ^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/generate_init", line 19, in get_init_c > return TEMPLATE.format(version=generate_version()) > ^^^^^^^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/shared/versioning.py", line 21, in generate_version > version = get_branch_version(None) > ^^^^^^^^^^^^^^^^^^^^^^^^ > File "/var/tmp/portage/games-engines/TR1X-9999/work/TR1X-9999/tools/shared/versioning.py", line 5, in get_branch_version > return check_output( > ^^^^^^^^^^^^^ > File "/usr/lib/python3.11/subprocess.py", line 466, in check_output > return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.11/subprocess.py", line 571, in run > raise CalledProcessError(retcode, process.args, > subprocess.CalledProcessError: Command '['git', 'describe', '--dirty', '--always', '--abbrev=7', '--tags', '--exclude', 'latest']' returned non-zero exit status 128. Signed-off-by: Fabrice Delliaux <netbox253@gmail.com>
2024-04-11 13:18:21 +02:00
cwd=SRC_DIR,
2024-04-10 10:26:06 +02:00
text=True,
capture_output=True,
check=False,
).stdout.strip()
2024-03-25 11:09:05 +01:00
def generate_version() -> str:
2024-04-10 10:26:06 +02:00
version = get_branch_version(None)
return version or "?"