From c9ae580113252853e1b99a110cb56e8ad1e89289 Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 10 Nov 2025 09:56:48 +0100 Subject: [PATCH 01/30] create artifacts tarball --- ci/teamcity/Delft3D/linux/collect.kt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index b27494c36b..25b01e2c08 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -19,14 +19,7 @@ object LinuxCollect : BuildType({ name = "Collect" buildNumberPattern = "%dep.${LinuxBuild.id}.product%: %build.vcs.number%" - allowExternalStatus = true - artifactRules = """ - #teamcity:symbolicLinks=as-is - lnx64 => dimrset_lnx64_%build.vcs.number%.tar.gz!lnx64 - dimrset_version_lnx64.txt => dimrset_lnx64_%build.vcs.number%.tar.gz!lnx64 - dimrset_version*txt => version - """.trimIndent() vcs { root(DslContext.settingsRoot) @@ -59,6 +52,13 @@ object LinuxCollect : BuildType({ path = "/usr/bin/python3" arguments = "ci/python/ci_tools/dimrset_delivery/scripts/list_all_what_strings.py --srcdir lnx64 --output dimrset_version_lnx64.txt" } + script { + name = "Prepare artifacts to upload" + scriptContent = """ + echo "Creating lnx64_%build.vcs.number%.tar.gz..." + tar -czf dimrset_lnx64_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt + """.trimIndent() + } } failureConditions { From 3b258464ce991a03c641d0d5e9eca5f7be4d1472 Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 10 Nov 2025 11:59:08 +0100 Subject: [PATCH 02/30] add step to upload to nexus --- ci/teamcity/Delft3D/linux/collect.kt | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 25b01e2c08..3e6479f23d 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -19,7 +19,14 @@ object LinuxCollect : BuildType({ name = "Collect" buildNumberPattern = "%dep.${LinuxBuild.id}.product%: %build.vcs.number%" + allowExternalStatus = true + artifactRules = """ + #teamcity:symbolicLinks=as-is + lnx64 => dimrset_lnx64_%build.vcs.number%.tar.gz!lnx64 + dimrset_version_lnx64.txt => dimrset_lnx64_%build.vcs.number%.tar.gz!lnx64 + dimrset_version*txt => version + """.trimIndent() vcs { root(DslContext.settingsRoot) @@ -53,12 +60,26 @@ object LinuxCollect : BuildType({ arguments = "ci/python/ci_tools/dimrset_delivery/scripts/list_all_what_strings.py --srcdir lnx64 --output dimrset_version_lnx64.txt" } script { - name = "Prepare artifacts to upload" + name = "Prepare artifact to upload" scriptContent = """ - echo "Creating lnx64_%build.vcs.number%.tar.gz..." + echo "Creating dimrset_lnx64_%build.vcs.number%.tar.gz..." tar -czf dimrset_lnx64_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt """.trimIndent() } + step { + name = "Upload artifact to Nexus" + type = "RawUploadNexus" + executionMode = BuildStep.ExecutionMode.DEFAULT + param("file_path", "dimrset_lnx64_%build.vcs.number%.tar.gz") + param("nexus_username", "%nexus_username%") + param("plugin.docker.imagePlatform", "") + param("plugin.docker.imageId", "") + param("teamcity.step.phase", "") + param("nexus_password", "%nexus_password%") + param("nexus_url", "https://artifacts.deltares.nl/repository/") + param("plugin.docker.run.parameters", "") + param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%build.vcs.number%.tar.gz") + } } failureConditions { From f3a726a5251a72a17e8ce69adc7687ac6c19ee9e Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 10 Nov 2025 14:36:27 +0100 Subject: [PATCH 03/30] add context params --- ci/teamcity/Delft3D/settings.kts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ci/teamcity/Delft3D/settings.kts b/ci/teamcity/Delft3D/settings.kts index a6a597ef2b..6d8579370a 100644 --- a/ci/teamcity/Delft3D/settings.kts +++ b/ci/teamcity/Delft3D/settings.kts @@ -23,6 +23,9 @@ project { param("s3_dsctestbench_accesskey", DslContext.getParameter("s3_dsctestbench_accesskey")) password("s3_dsctestbench_secret", "credentialsJSON:7e8a3aa7-76e9-4211-a72e-a3825ad1a160") + param("nexus_username", DslContext.getParameter("nexus_username")) + password("nexus_password", DslContext.getParameter("nexus_password")) + param("product", "dummy_value") } From d86958f4c9b9571a3fa5a60735b1d89c32725cc5 Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 10 Nov 2025 14:44:18 +0100 Subject: [PATCH 04/30] fix typo --- ci/teamcity/Delft3D/linux/collect.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 3e6479f23d..9bcf254724 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -68,7 +68,7 @@ object LinuxCollect : BuildType({ } step { name = "Upload artifact to Nexus" - type = "RawUploadNexus" + type = "RawUploadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT param("file_path", "dimrset_lnx64_%build.vcs.number%.tar.gz") param("nexus_username", "%nexus_username%") From 1d878562b1d29821ddc9ea2167fad2bfee181840 Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 09:31:41 +0100 Subject: [PATCH 05/30] add product to artifact name --- ci/teamcity/Delft3D/linux/collect.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 9bcf254724..013abcc7d9 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -62,15 +62,15 @@ object LinuxCollect : BuildType({ script { name = "Prepare artifact to upload" scriptContent = """ - echo "Creating dimrset_lnx64_%build.vcs.number%.tar.gz..." - tar -czf dimrset_lnx64_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt + echo "Creating dimrset_lnx64_%product_%build.vcs.number%.tar.gz..." + tar -czf dimrset_lnx64_%product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt """.trimIndent() } step { name = "Upload artifact to Nexus" type = "RawUploadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("file_path", "dimrset_lnx64_%build.vcs.number%.tar.gz") + param("file_path", "dimrset_lnx64_%product%_%build.vcs.number%.tar.gz") param("nexus_username", "%nexus_username%") param("plugin.docker.imagePlatform", "") param("plugin.docker.imageId", "") @@ -78,7 +78,7 @@ object LinuxCollect : BuildType({ param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository/") param("plugin.docker.run.parameters", "") - param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%build.vcs.number%.tar.gz") + param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%product%_%build.vcs.number%.tar.gz") } } From 5d490940613b3364304802f83842f7a7dd18724b Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 09:54:21 +0100 Subject: [PATCH 06/30] typo --- ci/teamcity/Delft3D/linux/collect.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 013abcc7d9..57caa2eae4 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -62,7 +62,7 @@ object LinuxCollect : BuildType({ script { name = "Prepare artifact to upload" scriptContent = """ - echo "Creating dimrset_lnx64_%product_%build.vcs.number%.tar.gz..." + echo "Creating dimrset_lnx64_%product%_%build.vcs.number%.tar.gz..." tar -czf dimrset_lnx64_%product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt """.trimIndent() } From 602e4b8c6b06e8b14aaf102ae2bb21d8d98f341b Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 10:17:15 +0100 Subject: [PATCH 07/30] use inherited product --- ci/teamcity/Delft3D/linux/collect.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 57caa2eae4..14824b4f91 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -62,15 +62,15 @@ object LinuxCollect : BuildType({ script { name = "Prepare artifact to upload" scriptContent = """ - echo "Creating dimrset_lnx64_%product%_%build.vcs.number%.tar.gz..." - tar -czf dimrset_lnx64_%product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt + echo "Creating dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + tar -czf dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt """.trimIndent() } step { name = "Upload artifact to Nexus" type = "RawUploadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("file_path", "dimrset_lnx64_%product%_%build.vcs.number%.tar.gz") + param("file_path", "dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") param("nexus_username", "%nexus_username%") param("plugin.docker.imagePlatform", "") param("plugin.docker.imageId", "") @@ -78,7 +78,7 @@ object LinuxCollect : BuildType({ param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository/") param("plugin.docker.run.parameters", "") - param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%product%_%build.vcs.number%.tar.gz") + param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } } From 6080e7eade4646537fe7887219a9d5dacb3d5f40 Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 10:55:02 +0100 Subject: [PATCH 08/30] seperate repo field --- ci/teamcity/Delft3D/linux/collect.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 14824b4f91..194da2c9e3 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -76,9 +76,10 @@ object LinuxCollect : BuildType({ param("plugin.docker.imageId", "") param("teamcity.step.phase", "") param("nexus_password", "%nexus_password%") - param("nexus_url", "https://artifacts.deltares.nl/repository/") + param("nexus_repo", "/delft3d-dev") + param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") - param("target_path", "delft3d-dev/linux/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("target_path", "/linux/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } } From 1163a68eaff45e7a56f7ad1dc020929378f0062a Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 14:54:37 +0100 Subject: [PATCH 09/30] changed destination --- ci/teamcity/Delft3D/linux/collect.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 194da2c9e3..ad627e72a2 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -79,7 +79,7 @@ object LinuxCollect : BuildType({ param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") - param("target_path", "/linux/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("target_path", "/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } } From 0340d07cd2adffc96bb97345cab4820772f7fa00 Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 15:22:22 +0100 Subject: [PATCH 10/30] add retention --- ci/teamcity/Delft3D/linux/collect.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index ad627e72a2..cef3a57e2f 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -79,7 +79,7 @@ object LinuxCollect : BuildType({ param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") - param("target_path", "/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("target_path", "/07_day_retention/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } } From 7bb31a44eab017f31ca5be266e4653ebfdccbc82 Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 11 Nov 2025 15:37:40 +0100 Subject: [PATCH 11/30] linux instead of lnx64 --- ci/teamcity/Delft3D/linux/collect.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index cef3a57e2f..a1fe725a46 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -62,15 +62,15 @@ object LinuxCollect : BuildType({ script { name = "Prepare artifact to upload" scriptContent = """ - echo "Creating dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." - tar -czf dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt + echo "Creating dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + tar -czf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt """.trimIndent() } step { name = "Upload artifact to Nexus" type = "RawUploadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("file_path", "dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("file_path", "dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") param("nexus_username", "%nexus_username%") param("plugin.docker.imagePlatform", "") param("plugin.docker.imageId", "") @@ -79,7 +79,7 @@ object LinuxCollect : BuildType({ param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") - param("target_path", "/07_day_retention/dimrset/dimrset_lnx64_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("target_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } } From b1aa488aa6e1b91fe3b2e77e01437d17db9f5f57 Mon Sep 17 00:00:00 2001 From: steur Date: Fri, 14 Nov 2025 09:15:10 +0100 Subject: [PATCH 12/30] windows create artifact step --- ci/teamcity/Delft3D/windows/collect.kt | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ci/teamcity/Delft3D/windows/collect.kt b/ci/teamcity/Delft3D/windows/collect.kt index fcb481340d..700575fdb1 100644 --- a/ci/teamcity/Delft3D/windows/collect.kt +++ b/ci/teamcity/Delft3D/windows/collect.kt @@ -75,6 +75,22 @@ object WindowsCollect : BuildType({ matches("dep.${WindowsBuild.id}.build_type", "Release") } } + powerShell { + name = "Prepare artifact to upload" + scriptMode = script { + content = """ + ${'$'}ErrorActionPreference = "Stop" + + ${'$'}zipName = "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip" + + Write-Host "Creating ${'$'}zipName ..." + + Compress-Archive -Path "x64", "version_x64.txt" -DestinationPath ${'$'}zipName -Force + + Write-Host "ZIP created: ${'$'}zipName" + """.trimIndent() + } + } } failureConditions { From 4243de4ad0cc92de79b664365ced3722c5e28a4a Mon Sep 17 00:00:00 2001 From: steur Date: Fri, 14 Nov 2025 09:49:52 +0100 Subject: [PATCH 13/30] typo --- ci/teamcity/Delft3D/windows/collect.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/windows/collect.kt b/ci/teamcity/Delft3D/windows/collect.kt index 700575fdb1..aa0cec2aee 100644 --- a/ci/teamcity/Delft3D/windows/collect.kt +++ b/ci/teamcity/Delft3D/windows/collect.kt @@ -85,7 +85,7 @@ object WindowsCollect : BuildType({ Write-Host "Creating ${'$'}zipName ..." - Compress-Archive -Path "x64", "version_x64.txt" -DestinationPath ${'$'}zipName -Force + Compress-Archive -Path "x64", "dimrset_version_x64.txt" -DestinationPath ${'$'}zipName -Force Write-Host "ZIP created: ${'$'}zipName" """.trimIndent() From 4cdb3510e53af61873143d53006916101767c976 Mon Sep 17 00:00:00 2001 From: steur Date: Fri, 14 Nov 2025 10:05:19 +0100 Subject: [PATCH 14/30] upload to nexus windows --- ci/teamcity/Delft3D/windows/collect.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ci/teamcity/Delft3D/windows/collect.kt b/ci/teamcity/Delft3D/windows/collect.kt index aa0cec2aee..d8f4c65bd1 100644 --- a/ci/teamcity/Delft3D/windows/collect.kt +++ b/ci/teamcity/Delft3D/windows/collect.kt @@ -91,6 +91,21 @@ object WindowsCollect : BuildType({ """.trimIndent() } } + step { + name = "Upload artifact to Nexus" + type = "RawUploadNexusWindows" + executionMode = BuildStep.ExecutionMode.DEFAULT + param("file_path", "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + param("nexus_username", "%nexus_username%") + param("plugin.docker.imagePlatform", "") + param("plugin.docker.imageId", "") + param("teamcity.step.phase", "") + param("nexus_password", "%nexus_password%") + param("nexus_repo", "/delft3d-dev") + param("nexus_url", "https://artifacts.deltares.nl/repository") + param("plugin.docker.run.parameters", "") + param("target_path", "/07_day_retention/dimrset/dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + } } failureConditions { From 78fab01193af2cf2eb984d7a92fe3ca610c2e805 Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 17 Nov 2025 14:59:50 +0100 Subject: [PATCH 15/30] nexus download windows testbench --- ci/teamcity/Delft3D/windows/test.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ci/teamcity/Delft3D/windows/test.kt b/ci/teamcity/Delft3D/windows/test.kt index 2b8955b582..d50afb265e 100644 --- a/ci/teamcity/Delft3D/windows/test.kt +++ b/ci/teamcity/Delft3D/windows/test.kt @@ -75,6 +75,21 @@ object WindowsTest : BuildType({ steps { mergeTargetBranch {} + step { + name = "Download artifact from Nexus" + type = "RawDownloadNexusWindows" + executionMode = BuildStep.ExecutionMode.DEFAULT + param("artifact_path", "/07_day_retention/dimrset/dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + param("nexus_repo", "/delft3d-dev") + param("nexus_username", "%nexus_username%") + param("plugin.docker.imagePlatform", "") + param("plugin.docker.imageId", "") + param("teamcity.step.phase", "") + param("download_to", "./downloads") + param("nexus_password", "%nexus_password%") + param("nexus_url", "https://artifacts.deltares.nl/repository") + param("plugin.docker.run.parameters", "") + } python { name = "Run TestBench.py" id = "RUNNER_testbench" From 3dc0f04fc7a495383399cffd012a163ed842dfe2 Mon Sep 17 00:00:00 2001 From: steur Date: Mon, 17 Nov 2025 15:52:45 +0100 Subject: [PATCH 16/30] use nexus artifact --- ci/teamcity/Delft3D/windows/test.kt | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/ci/teamcity/Delft3D/windows/test.kt b/ci/teamcity/Delft3D/windows/test.kt index d50afb265e..583fbe5a7d 100644 --- a/ci/teamcity/Delft3D/windows/test.kt +++ b/ci/teamcity/Delft3D/windows/test.kt @@ -85,11 +85,29 @@ object WindowsTest : BuildType({ param("plugin.docker.imagePlatform", "") param("plugin.docker.imageId", "") param("teamcity.step.phase", "") - param("download_to", "./downloads") + param("download_to", ".") param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") } + powerShell { + name = "Extract artifact" + scriptMode = script { + content = """ + ${'$'}ErrorActionPreference = "Stop" + + ${'$'}zipName = "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip" + + ${'$'}dest = "test/deltares_testbench/data/engines/teamcity_artifacts/x64" + + Write-Host "Extracting ${'$'}zipName ..." + + Expand-Archive -Path ${'$'}zipName -DestinationPath "temp_extract" + + Copy-Item "temp_extract/x64/*" -Destination ${'$'}dest -Recurse + """.trimIndent() + } + } python { name = "Run TestBench.py" id = "RUNNER_testbench" @@ -132,10 +150,6 @@ object WindowsTest : BuildType({ onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL } - artifacts { - cleanDestination = true - artifactRules = "dimrset_x64_*.zip!/x64/**=>test/deltares_testbench/data/engines/teamcity_artifacts/x64" - } } dependency(WindowsTestEnvironment) { snapshot { From 34836ce323c11efb01f20dc9f6f847f4301d149c Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 18 Nov 2025 10:38:17 +0100 Subject: [PATCH 17/30] use robocopy --- ci/teamcity/Delft3D/windows/test.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/windows/test.kt b/ci/teamcity/Delft3D/windows/test.kt index 583fbe5a7d..5d5ae09ebc 100644 --- a/ci/teamcity/Delft3D/windows/test.kt +++ b/ci/teamcity/Delft3D/windows/test.kt @@ -104,7 +104,7 @@ object WindowsTest : BuildType({ Expand-Archive -Path ${'$'}zipName -DestinationPath "temp_extract" - Copy-Item "temp_extract/x64/*" -Destination ${'$'}dest -Recurse + robocopy "temp_extract/x64" ${'$'}dest /E /XC /XN /XO """.trimIndent() } } From f710430ac86f35fc3bb82c62a658ba77790fffac Mon Sep 17 00:00:00 2001 From: steur Date: Tue, 18 Nov 2025 13:33:38 +0100 Subject: [PATCH 18/30] add download artifacts linux --- ci/teamcity/Delft3D/linux/runtimeContainers.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index 9fec21eb61..4655cbdc4e 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -43,6 +43,21 @@ object LinuxRuntimeContainers : BuildType({ steps { mergeTargetBranch {} + step { + name = "Download artifact from Nexus" + type = "RawDownloadNexusLinux" + executionMode = BuildStep.ExecutionMode.DEFAULT + param("artifact_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("nexus_repo", "/delft3d-dev") + param("nexus_username", "%nexus_username%") + param("plugin.docker.imagePlatform", "") + param("plugin.docker.imageId", "") + param("teamcity.step.phase", "") + param("download_to", ".") + param("nexus_password", "%nexus_password%") + param("nexus_url", "https://artifacts.deltares.nl/repository") + param("plugin.docker.run.parameters", "") + } exec { name = "Copy example and readme.txt" path = "ci/teamcity/Delft3D/linux/scripts/copyExampleAndReadMe.sh" From 05bc4ec31323c096ec926f8ccfd6760c2cd703a3 Mon Sep 17 00:00:00 2001 From: steur Date: Wed, 19 Nov 2025 13:49:48 +0100 Subject: [PATCH 19/30] use nexus artifact linux runtime containers --- .../Delft3D/linux/runtimeContainers.kt | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index 4655cbdc4e..af55315b99 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -58,6 +58,20 @@ object LinuxRuntimeContainers : BuildType({ param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") } + script { + name = "Extract artifact" + scriptContent = """ + echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + + tar -xzf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz + + cp -R lnx64/bin/. dimrset/bin/. + + cp -R lnx64/lib/. dimrset/lib/. + + cp -R lnx64/share/. dimrset/share/. + """.trimIndent() + } exec { name = "Copy example and readme.txt" path = "ci/teamcity/Delft3D/linux/scripts/copyExampleAndReadMe.sh" @@ -117,14 +131,6 @@ object LinuxRuntimeContainers : BuildType({ onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL } - - artifacts { - artifactRules = """ - dimrset_lnx64_*.tar.gz!lnx64/bin/** => dimrset/bin - dimrset_lnx64_*.tar.gz!lnx64/lib/** => dimrset/lib - ?:dimrset_lnx64_*.tar.gz!lnx64/share/** => dimrset/share - """.trimIndent() - } } artifacts(AbsoluteId("Wanda_WandaCore_Wanda4TrunkX64")) { cleanDestination = true From f049f535a65e4b906b6dee32370ede29351cabdd Mon Sep 17 00:00:00 2001 From: steur Date: Wed, 19 Nov 2025 14:10:15 +0100 Subject: [PATCH 20/30] small copy fix --- ci/teamcity/Delft3D/linux/runtimeContainers.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index af55315b99..b4edf4b6c4 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -65,11 +65,13 @@ object LinuxRuntimeContainers : BuildType({ tar -xzf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz - cp -R lnx64/bin/. dimrset/bin/. + mkdir dimrset - cp -R lnx64/lib/. dimrset/lib/. + cp -r lnx64/bin dimrset/bin - cp -R lnx64/share/. dimrset/share/. + cp -r lnx64/lib dimrset/lib + + cp -r lnx64/share dimrset/share """.trimIndent() } exec { From 20afb790f1b21aa3a49c49008bdcc604762f8d7e Mon Sep 17 00:00:00 2001 From: steur Date: Wed, 19 Nov 2025 16:02:44 +0100 Subject: [PATCH 21/30] unit test artifacts --- ci/teamcity/Delft3D/linux/unitTest.kt | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/ci/teamcity/Delft3D/linux/unitTest.kt b/ci/teamcity/Delft3D/linux/unitTest.kt index 20cd23bbf0..bb158abdb7 100644 --- a/ci/teamcity/Delft3D/linux/unitTest.kt +++ b/ci/teamcity/Delft3D/linux/unitTest.kt @@ -37,6 +37,29 @@ object LinuxUnitTest : BuildType({ steps { mergeTargetBranch {} + step { + name = "Download artifact from Nexus" + type = "RawDownloadNexusLinux" + executionMode = BuildStep.ExecutionMode.DEFAULT + param("artifact_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("nexus_repo", "/delft3d-dev") + param("nexus_username", "%nexus_username%") + param("plugin.docker.imagePlatform", "") + param("plugin.docker.imageId", "") + param("teamcity.step.phase", "") + param("download_to", ".") + param("nexus_password", "%nexus_password%") + param("nexus_url", "https://artifacts.deltares.nl/repository") + param("plugin.docker.run.parameters", "") + } + script { + name = "Extract artifact" + scriptContent = """ + echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + + tar -xzf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz + """.trimIndent() + } python { conditions { matches("product", """^(fm-(suite|testbench))|(all-testbench)$""") From c8f1d65148babb1d37d984fdb4472637bc9fb60a Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 20 Nov 2025 08:17:01 +0100 Subject: [PATCH 22/30] remove dependency --- ci/teamcity/Delft3D/linux/unitTest.kt | 3 --- 1 file changed, 3 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/unitTest.kt b/ci/teamcity/Delft3D/linux/unitTest.kt index bb158abdb7..5a33a1b78a 100644 --- a/ci/teamcity/Delft3D/linux/unitTest.kt +++ b/ci/teamcity/Delft3D/linux/unitTest.kt @@ -163,9 +163,6 @@ object LinuxUnitTest : BuildType({ } } dependency(LinuxCollect) { - artifacts { - artifactRules = "dimrset_lnx64_*.tar.gz!** => ." - } snapshot { onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL From 669caf4e842945696982197685f6fcfed47715e8 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 20 Nov 2025 11:40:20 +0100 Subject: [PATCH 23/30] add back artifacts tc linux --- ci/teamcity/Delft3D/linux/runtimeContainers.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index b4edf4b6c4..5e3288c412 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -133,6 +133,14 @@ object LinuxRuntimeContainers : BuildType({ onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL } + + artifacts { + artifactRules = """ + dimrset_lnx64_*.tar.gz!lnx64/bin/** => dimrset/bin + dimrset_lnx64_*.tar.gz!lnx64/lib/** => dimrset/lib + ?:dimrset_lnx64_*.tar.gz!lnx64/share/** => dimrset/share + """.trimIndent() + } } artifacts(AbsoluteId("Wanda_WandaCore_Wanda4TrunkX64")) { cleanDestination = true From 0af0ea55860243dc7ca0135ea3f5ad223d129874 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 20 Nov 2025 13:15:35 +0100 Subject: [PATCH 24/30] disable extraction --- ci/teamcity/Delft3D/linux/runtimeContainers.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index 5e3288c412..fcce0eaeee 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -60,6 +60,7 @@ object LinuxRuntimeContainers : BuildType({ } script { name = "Extract artifact" + enabled = false scriptContent = """ echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." @@ -133,7 +134,7 @@ object LinuxRuntimeContainers : BuildType({ onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL } - + artifacts { artifactRules = """ dimrset_lnx64_*.tar.gz!lnx64/bin/** => dimrset/bin From cf69c2343fc1743b31f05c51e59eb48c48ed8dba Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 20 Nov 2025 14:09:53 +0100 Subject: [PATCH 25/30] move back tc artifacts --- ci/teamcity/Delft3D/linux/unitTest.kt | 4 ++++ ci/teamcity/Delft3D/windows/test.kt | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/ci/teamcity/Delft3D/linux/unitTest.kt b/ci/teamcity/Delft3D/linux/unitTest.kt index 5a33a1b78a..c077589fe5 100644 --- a/ci/teamcity/Delft3D/linux/unitTest.kt +++ b/ci/teamcity/Delft3D/linux/unitTest.kt @@ -54,6 +54,7 @@ object LinuxUnitTest : BuildType({ } script { name = "Extract artifact" + enabled = false scriptContent = """ echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." @@ -158,6 +159,9 @@ object LinuxUnitTest : BuildType({ dependencies { dependency(Trigger) { + artifacts { + artifactRules = "dimrset_lnx64_*.tar.gz!** => ." + } snapshot { onDependencyFailure = FailureAction.FAIL_TO_START } diff --git a/ci/teamcity/Delft3D/windows/test.kt b/ci/teamcity/Delft3D/windows/test.kt index 5d5ae09ebc..61395118f8 100644 --- a/ci/teamcity/Delft3D/windows/test.kt +++ b/ci/teamcity/Delft3D/windows/test.kt @@ -92,6 +92,7 @@ object WindowsTest : BuildType({ } powerShell { name = "Extract artifact" + enabled = false scriptMode = script { content = """ ${'$'}ErrorActionPreference = "Stop" @@ -150,6 +151,10 @@ object WindowsTest : BuildType({ onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL } + artifacts { + cleanDestination = true + artifactRules = "dimrset_x64_*.zip!/x64/**=>test/deltares_testbench/data/engines/teamcity_artifacts/x64" + } } dependency(WindowsTestEnvironment) { snapshot { From 12a895a6a50526e004d8bd6b447c0fa0c5b98420 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 20 Nov 2025 14:21:51 +0100 Subject: [PATCH 26/30] typo --- ci/teamcity/Delft3D/linux/unitTest.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/unitTest.kt b/ci/teamcity/Delft3D/linux/unitTest.kt index c077589fe5..22f6f95f54 100644 --- a/ci/teamcity/Delft3D/linux/unitTest.kt +++ b/ci/teamcity/Delft3D/linux/unitTest.kt @@ -159,14 +159,14 @@ object LinuxUnitTest : BuildType({ dependencies { dependency(Trigger) { - artifacts { - artifactRules = "dimrset_lnx64_*.tar.gz!** => ." - } snapshot { onDependencyFailure = FailureAction.FAIL_TO_START } } dependency(LinuxCollect) { + artifacts { + artifactRules = "dimrset_lnx64_*.tar.gz!** => ." + } snapshot { onDependencyFailure = FailureAction.FAIL_TO_START onDependencyCancel = FailureAction.CANCEL From 236bc9d6eec2584ed51474188b91135cda7525d4 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 27 Nov 2025 08:56:35 +0100 Subject: [PATCH 27/30] parameterize --- ci/teamcity/Delft3D/linux/collect.kt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index a1fe725a46..7aa3a94125 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -28,6 +28,10 @@ object LinuxCollect : BuildType({ dimrset_version*txt => version """.trimIndent() + params { + param("file_path", "dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + } + vcs { root(DslContext.settingsRoot) cleanCheckout = true @@ -62,15 +66,15 @@ object LinuxCollect : BuildType({ script { name = "Prepare artifact to upload" scriptContent = """ - echo "Creating dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." - tar -czf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz lnx64 dimrset_version_lnx64.txt + echo "Creating %file_path%..." + tar -czf %file_path% lnx64 dimrset_version_lnx64.txt """.trimIndent() } step { name = "Upload artifact to Nexus" type = "RawUploadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("file_path", "dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("file_path", "%file_path%") param("nexus_username", "%nexus_username%") param("plugin.docker.imagePlatform", "") param("plugin.docker.imageId", "") @@ -79,7 +83,7 @@ object LinuxCollect : BuildType({ param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") - param("target_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("target_path", "/07_day_retention/dimrset/%file_path%") } } From 9d9f7bcf133f34b5fc435d672f922fdd70999b89 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 27 Nov 2025 09:55:09 +0100 Subject: [PATCH 28/30] param and remove empty --- ci/teamcity/Delft3D/linux/collect.kt | 3 --- ci/teamcity/Delft3D/linux/runtimeContainers.kt | 14 +++++++------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index 7aa3a94125..ff4f9496b4 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -76,9 +76,6 @@ object LinuxCollect : BuildType({ executionMode = BuildStep.ExecutionMode.DEFAULT param("file_path", "%file_path%") param("nexus_username", "%nexus_username%") - param("plugin.docker.imagePlatform", "") - param("plugin.docker.imageId", "") - param("teamcity.step.phase", "") param("nexus_password", "%nexus_password%") param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index fcce0eaeee..a5a90179a1 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -36,6 +36,10 @@ object LinuxRuntimeContainers : BuildType({ } } + params { + param("file_path", "dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + } + vcs { root(DslContext.settingsRoot) cleanCheckout = true @@ -47,13 +51,9 @@ object LinuxRuntimeContainers : BuildType({ name = "Download artifact from Nexus" type = "RawDownloadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("artifact_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("artifact_path", "/07_day_retention/dimrset/%file_path%") param("nexus_repo", "/delft3d-dev") param("nexus_username", "%nexus_username%") - param("plugin.docker.imagePlatform", "") - param("plugin.docker.imageId", "") - param("teamcity.step.phase", "") - param("download_to", ".") param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository") param("plugin.docker.run.parameters", "") @@ -62,9 +62,9 @@ object LinuxRuntimeContainers : BuildType({ name = "Extract artifact" enabled = false scriptContent = """ - echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + echo "Extracting %file_path%..." - tar -xzf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz + tar -xzf %file_path% mkdir dimrset From 4182e5c8028a3c24703812b4948a87f3cbeeb4b4 Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 27 Nov 2025 10:04:54 +0100 Subject: [PATCH 29/30] also for unit test --- ci/teamcity/Delft3D/linux/collect.kt | 1 - ci/teamcity/Delft3D/linux/runtimeContainers.kt | 2 +- ci/teamcity/Delft3D/linux/unitTest.kt | 11 ++++------- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/ci/teamcity/Delft3D/linux/collect.kt b/ci/teamcity/Delft3D/linux/collect.kt index ff4f9496b4..ef68f092b5 100644 --- a/ci/teamcity/Delft3D/linux/collect.kt +++ b/ci/teamcity/Delft3D/linux/collect.kt @@ -79,7 +79,6 @@ object LinuxCollect : BuildType({ param("nexus_password", "%nexus_password%") param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") - param("plugin.docker.run.parameters", "") param("target_path", "/07_day_retention/dimrset/%file_path%") } } diff --git a/ci/teamcity/Delft3D/linux/runtimeContainers.kt b/ci/teamcity/Delft3D/linux/runtimeContainers.kt index a5a90179a1..6f4c83ba58 100644 --- a/ci/teamcity/Delft3D/linux/runtimeContainers.kt +++ b/ci/teamcity/Delft3D/linux/runtimeContainers.kt @@ -54,9 +54,9 @@ object LinuxRuntimeContainers : BuildType({ param("artifact_path", "/07_day_retention/dimrset/%file_path%") param("nexus_repo", "/delft3d-dev") param("nexus_username", "%nexus_username%") + param("download_to", ".") param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository") - param("plugin.docker.run.parameters", "") } script { name = "Extract artifact" diff --git a/ci/teamcity/Delft3D/linux/unitTest.kt b/ci/teamcity/Delft3D/linux/unitTest.kt index 22f6f95f54..6b2cb8b92d 100644 --- a/ci/teamcity/Delft3D/linux/unitTest.kt +++ b/ci/teamcity/Delft3D/linux/unitTest.kt @@ -28,6 +28,7 @@ object LinuxUnitTest : BuildType({ params { param("env.PATH", "%teamcity.build.checkoutDir%/lnx64/bin:%env.PATH%") param("env.LD_LIBRARY_PATH", "%teamcity.build.checkoutDir%/lnx64/lib:%env.LD_LIBRARY_PATH%") + param("file_path", "dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") } vcs { @@ -41,24 +42,20 @@ object LinuxUnitTest : BuildType({ name = "Download artifact from Nexus" type = "RawDownloadNexusLinux" executionMode = BuildStep.ExecutionMode.DEFAULT - param("artifact_path", "/07_day_retention/dimrset/dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz") + param("artifact_path", "/07_day_retention/dimrset/%file_path%") param("nexus_repo", "/delft3d-dev") param("nexus_username", "%nexus_username%") - param("plugin.docker.imagePlatform", "") - param("plugin.docker.imageId", "") - param("teamcity.step.phase", "") param("download_to", ".") param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository") - param("plugin.docker.run.parameters", "") } script { name = "Extract artifact" enabled = false scriptContent = """ - echo "Extracting dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz..." + echo "Extracting %file_path%..." - tar -xzf dimrset_linux_%dep.${LinuxBuild.id}.product%_%build.vcs.number%.tar.gz + tar -xzf %file_path% """.trimIndent() } python { From 0db49d00b1a73d965d789381b11abaf05523ad0a Mon Sep 17 00:00:00 2001 From: steur Date: Thu, 27 Nov 2025 10:30:38 +0100 Subject: [PATCH 30/30] windows parameterize --- ci/teamcity/Delft3D/windows/collect.kt | 20 +++++++++----------- ci/teamcity/Delft3D/windows/test.kt | 13 ++++--------- 2 files changed, 13 insertions(+), 20 deletions(-) diff --git a/ci/teamcity/Delft3D/windows/collect.kt b/ci/teamcity/Delft3D/windows/collect.kt index d8f4c65bd1..d6af0c6623 100644 --- a/ci/teamcity/Delft3D/windows/collect.kt +++ b/ci/teamcity/Delft3D/windows/collect.kt @@ -27,6 +27,10 @@ object WindowsCollect : BuildType({ dimrset_version*txt => version """.trimIndent() + params { + param("file_path", "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + } + vcs { root(DslContext.settingsRoot) cleanCheckout = true @@ -81,13 +85,11 @@ object WindowsCollect : BuildType({ content = """ ${'$'}ErrorActionPreference = "Stop" - ${'$'}zipName = "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip" - - Write-Host "Creating ${'$'}zipName ..." + Write-Host "Creating %file_path% ..." - Compress-Archive -Path "x64", "dimrset_version_x64.txt" -DestinationPath ${'$'}zipName -Force + Compress-Archive -Path "x64", "dimrset_version_x64.txt" -DestinationPath %file_path% -Force - Write-Host "ZIP created: ${'$'}zipName" + Write-Host "ZIP created: %file_path%" """.trimIndent() } } @@ -95,16 +97,12 @@ object WindowsCollect : BuildType({ name = "Upload artifact to Nexus" type = "RawUploadNexusWindows" executionMode = BuildStep.ExecutionMode.DEFAULT - param("file_path", "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + param("file_path", "%file_path%") param("nexus_username", "%nexus_username%") - param("plugin.docker.imagePlatform", "") - param("plugin.docker.imageId", "") - param("teamcity.step.phase", "") param("nexus_password", "%nexus_password%") param("nexus_repo", "/delft3d-dev") param("nexus_url", "https://artifacts.deltares.nl/repository") - param("plugin.docker.run.parameters", "") - param("target_path", "/07_day_retention/dimrset/dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + param("target_path", "/07_day_retention/dimrset/%file_path%") } } diff --git a/ci/teamcity/Delft3D/windows/test.kt b/ci/teamcity/Delft3D/windows/test.kt index 61395118f8..652fb83030 100644 --- a/ci/teamcity/Delft3D/windows/test.kt +++ b/ci/teamcity/Delft3D/windows/test.kt @@ -61,6 +61,7 @@ object WindowsTest : BuildType({ text("case_filter", "", label = "Case filter", display = ParameterDisplay.PROMPT, allowEmpty = true) param("s3_dsctestbench_accesskey", DslContext.getParameter("s3_dsctestbench_accesskey")) password("s3_dsctestbench_secret", DslContext.getParameter("s3_dsctestbench_secret")) + param("file_path", "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") } @@ -79,16 +80,12 @@ object WindowsTest : BuildType({ name = "Download artifact from Nexus" type = "RawDownloadNexusWindows" executionMode = BuildStep.ExecutionMode.DEFAULT - param("artifact_path", "/07_day_retention/dimrset/dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip") + param("artifact_path", "/07_day_retention/dimrset/%file_path%") param("nexus_repo", "/delft3d-dev") param("nexus_username", "%nexus_username%") - param("plugin.docker.imagePlatform", "") - param("plugin.docker.imageId", "") - param("teamcity.step.phase", "") param("download_to", ".") param("nexus_password", "%nexus_password%") param("nexus_url", "https://artifacts.deltares.nl/repository") - param("plugin.docker.run.parameters", "") } powerShell { name = "Extract artifact" @@ -97,13 +94,11 @@ object WindowsTest : BuildType({ content = """ ${'$'}ErrorActionPreference = "Stop" - ${'$'}zipName = "dimrset_windows_%dep.${WindowsBuild.id}.product%_%build.vcs.number%.zip" - ${'$'}dest = "test/deltares_testbench/data/engines/teamcity_artifacts/x64" - Write-Host "Extracting ${'$'}zipName ..." + Write-Host "Extracting %file_path% ..." - Expand-Archive -Path ${'$'}zipName -DestinationPath "temp_extract" + Expand-Archive -Path %file_path% -DestinationPath "temp_extract" robocopy "temp_extract/x64" ${'$'}dest /E /XC /XN /XO """.trimIndent()