Skip to content

Commit ef5dcf8

Browse files
committed
Fix mixed cname with separate version argument parsing
Signed-off-by: Tobias Wolf <[email protected]>
1 parent 22be034 commit ef5dcf8

File tree

2 files changed

+21
-24
lines changed

2 files changed

+21
-24
lines changed

src/gardenlinux/features/__main__.py

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -65,24 +65,24 @@ def main() -> None:
6565
args.cname
6666
), "Please provide either `--features` or `--cname` argument"
6767

68-
arch = None
68+
arch = args.arch
6969
flavor = None
7070
commit_id = None
7171
gardenlinux_root = path.dirname(args.feature_dir)
72-
version = None
73-
74-
if args.arch is not None:
75-
arch = args.arch
76-
77-
if args.version is not None:
78-
version = args.version
72+
version = args.version
7973

8074
if arch is None or arch == "":
8175
arch = args.default_arch
8276

77+
if gardenlinux_root == "":
78+
gardenlinux_root = "."
79+
8380
if version is None or version == "":
84-
version_data = get_version_and_commit_id_from_files(gardenlinux_root)
85-
version = f"{version_data[0]}-{version_data[1]}"
81+
try:
82+
version_data = get_version_and_commit_id_from_files(gardenlinux_root)
83+
version = f"{version_data[0]}-{version_data[1]}"
84+
except:
85+
version = args.default_version
8686

8787
if args.cname:
8888
cname = CName(args.cname, arch=arch, version=version)
@@ -106,12 +106,6 @@ def main() -> None:
106106

107107
feature_dir_name = path.basename(args.feature_dir)
108108

109-
if gardenlinux_root == "":
110-
gardenlinux_root = "."
111-
112-
if gardenlinux_root == "":
113-
gardenlinux_root = "."
114-
115109
additional_filter_func = lambda node: node not in args.ignore
116110

117111
if args.type == "arch":
@@ -199,6 +193,9 @@ def get_version_and_commit_id_from_files(gardenlinux_root: str) -> tuple[str, st
199193
with open(path.join(gardenlinux_root, "VERSION"), "r") as fp:
200194
version = fp.read().strip()
201195

196+
if commit_id is None or version is None:
197+
raise RuntimeError("Failed to read version or commit ID from files")
198+
202199
return (version, commit_id)
203200

204201

src/gardenlinux/features/cname_main.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,19 @@ def main():
4444

4545
assert re_match, f"Not a valid GardenLinux canonical name {args.cname}"
4646

47-
arch = None
47+
arch = args.arch
4848
gardenlinux_root = dirname(args.feature_dir)
4949
version = args.version
5050

51-
if args.arch is not None:
52-
arch = args.arch
53-
54-
if args.version is not None:
55-
version = args.version
51+
if gardenlinux_root == "":
52+
gardenlinux_root = "."
5653

5754
if not version:
58-
version_data = get_version_and_commit_id_from_files(gardenlinux_root)
59-
version = f"{version_data[0]}-{version_data[1]}"
55+
try:
56+
version_data = get_version_and_commit_id_from_files(gardenlinux_root)
57+
version = f"{version_data[0]}-{version_data[1]}"
58+
except:
59+
pass
6060

6161
cname = CName(args.cname, arch=arch, version=version)
6262

0 commit comments

Comments
 (0)