From 4959a0337c1c660b28d9e3acf1ef05f8e4a49abe Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Tue, 5 Mar 2024 17:22:37 -0500 Subject: [PATCH 1/3] Ensure that artifact url is valid for Windows dist manifest Signed-off-by: Peter Zhu --- src/assemble_workflow/bundle_url_location.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/assemble_workflow/bundle_url_location.py b/src/assemble_workflow/bundle_url_location.py index 7603ba7afc..91d2f0dcc0 100644 --- a/src/assemble_workflow/bundle_url_location.py +++ b/src/assemble_workflow/bundle_url_location.py @@ -16,4 +16,8 @@ def __init__(self, path: str, filename: str, distribution: str) -> None: def join(self, *args: str) -> str: sub_path = "/".join(args) - return urljoin(self.path + "/", sub_path) + + # Make sure \ is replaced with / for valid url + # We will only make change here as the location can be either local or url + # Thus keep \ if it is a local path + return urljoin(self.path + "/", sub_path.replace("\\", "/")) From 58c4211de2c0d7663fe4abd51c7743049083ab14 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Tue, 5 Mar 2024 18:56:02 -0500 Subject: [PATCH 2/3] Adding tests Signed-off-by: Peter Zhu --- .../test_bundle_url_location.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/tests_assemble_workflow/test_bundle_url_location.py b/tests/tests_assemble_workflow/test_bundle_url_location.py index cbfafb8107..148c5f57f0 100644 --- a/tests/tests_assemble_workflow/test_bundle_url_location.py +++ b/tests/tests_assemble_workflow/test_bundle_url_location.py @@ -49,3 +49,17 @@ def test_opensearch_dashboards(self) -> None: location.get_build_location("sql"), "https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/linux/x64/tar/builds/opensearch-dashboards/sql" ) + + def test_opensearch_windows(self) -> None: + location = BundleUrlLocation("https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64", "opensearch", "plugins\zip") + + self.assertEqual( + location.get_bundle_location("sql"), + "https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64/plugins/zip/dist/opensearch/sql" + ) + + self.assertEqual( + location.get_build_location("sql"), + "https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64/plugins/zip/builds/opensearch/sql" + ) + From af91be510d765bc2e29c05adf51bd61e976346b0 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Tue, 5 Mar 2024 19:07:52 -0500 Subject: [PATCH 3/3] Update test Signed-off-by: Peter Zhu --- tests/tests_assemble_workflow/test_bundle_url_location.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/tests_assemble_workflow/test_bundle_url_location.py b/tests/tests_assemble_workflow/test_bundle_url_location.py index 148c5f57f0..9821fc9fc9 100644 --- a/tests/tests_assemble_workflow/test_bundle_url_location.py +++ b/tests/tests_assemble_workflow/test_bundle_url_location.py @@ -51,7 +51,7 @@ def test_opensearch_dashboards(self) -> None: ) def test_opensearch_windows(self) -> None: - location = BundleUrlLocation("https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64", "opensearch", "plugins\zip") + location = BundleUrlLocation("https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64", "opensearch", "plugins\\zip") self.assertEqual( location.get_bundle_location("sql"), @@ -62,4 +62,3 @@ def test_opensearch_windows(self) -> None: location.get_build_location("sql"), "https://ci.opensearch.org/ci/dbc/bundle-build/1.3.0/1318/windows/x64/plugins/zip/builds/opensearch/sql" ) -