From c861cf1e9be4a90cfdc3f198dedb55ec3965472b Mon Sep 17 00:00:00 2001 From: Roy Crihfield Date: Sat, 22 Jun 2024 01:17:37 +0800 Subject: [PATCH] support version in source/dist install --- setup.py | 4 +++- stack_orchestrator/version.py | 14 +++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/setup.py b/setup.py index 773451f5..ace0d536 100644 --- a/setup.py +++ b/setup.py @@ -4,9 +4,11 @@ with open("README.md", "r", encoding="utf-8") as fh: long_description = fh.read() with open("requirements.txt", "r", encoding="utf-8") as fh: requirements = fh.read() +with open("stack_orchestrator/data/version.txt", "r", encoding="utf-8") as fh: + version = fh.readlines()[-1].strip(" \n") setup( name='laconic-stack-orchestrator', - version='1.0.12', + version=version, author='Cerc', author_email='info@cerc.io', license='GNU Affero General Public License', diff --git a/stack_orchestrator/version.py b/stack_orchestrator/version.py index 68e47b44..a37cc0b6 100644 --- a/stack_orchestrator/version.py +++ b/stack_orchestrator/version.py @@ -14,7 +14,7 @@ # along with this program. If not, see . import click -import importlib.resources +from importlib import resources, metadata @click.command() @@ -24,8 +24,12 @@ def command(ctx): # See: https://stackoverflow.com/a/20885799/1701505 from stack_orchestrator import data - with importlib.resources.open_text(data, "build_tag.txt") as version_file: - # TODO: code better version that skips comment lines - version_string = version_file.read().splitlines()[1] + tag_file_path = resources.files(data) / "build_tag.txt" + if tag_file_path.exists(): + with open(tag_file_path, "r") as version_file: + # TODO: code better version that skips comment lines + version_string = version_file.read().splitlines()[1] + else: + version_string = metadata.version("laconic-stack-orchestrator") + "-unknown" - print(f"Version: {version_string}") + print(version_string)