aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntti Kokko <antti.kokko@qt.io>2023-02-07 15:37:35 +0200
committerAntti Kokko <antti.kokko@qt.io>2023-02-07 14:25:38 +0000
commitc056a3d8b6a96eb421700a3e5a13dfeb53ee2cf8 (patch)
tree3aebe8091d2eab801cabe027878ed0421aae21c4
parent4299a3d9bad4269a3ed7b1501faa4f3648f322bb (diff)
release_task_reader.py: fix offline task validation issue
Offline tasks settings do not include 'repo_path'. Change-Id: Icb8154cbc16ac5f254f1d2fbb4389baed920da2c Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io> Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
-rwxr-xr-xpackaging-tools/release_task_reader.py5
-rwxr-xr-xpackaging-tools/tests/test_release_task_reader.py9
2 files changed, 12 insertions, 2 deletions
diff --git a/packaging-tools/release_task_reader.py b/packaging-tools/release_task_reader.py
index 66768bcc0..de7d3a196 100755
--- a/packaging-tools/release_task_reader.py
+++ b/packaging-tools/release_task_reader.py
@@ -193,7 +193,10 @@ class IFWReleaseTask(ReleaseTask):
self._source_online_repository_path = value
def validate(self) -> None:
- for item in ["repo_path", "config_file"]:
+ validate_list = ["config_file", "repo_path"]
+ if "ifw.offline" in self.name:
+ validate_list.remove("repo_path")
+ for item in validate_list:
if not self._key_exists(item):
raise ReleaseTaskError(f"Value invalid or missing: {item}")
diff --git a/packaging-tools/tests/test_release_task_reader.py b/packaging-tools/tests/test_release_task_reader.py
index 8ad039945..ba9ba12f4 100755
--- a/packaging-tools/tests/test_release_task_reader.py
+++ b/packaging-tools/tests/test_release_task_reader.py
@@ -81,7 +81,14 @@ class TestReleaseTaskReader(unittest.TestCase):
""", ["deb,linux"], TaskType.DEB_TASK_TYPE, True),
("""
[task.deb.repository.linux.x64]
- """, ["deb"], TaskType.DEB_TASK_TYPE, False)
+ """, ["deb"], TaskType.DEB_TASK_TYPE, False),
+ ("""
+ [task.ifw.offline.linux.x64.no_config_file]
+ """, ["ifw,offline"], TaskType.IFW_TASK_TYPE, False),
+ ("""
+ [task.ifw.offline.linux.x64]
+ config_file: foobar-file-repository
+ """, ["ifw,offline"], TaskType.IFW_TASK_TYPE, True)
)
@unpack # type: ignore
def test_release_task_validity(