From c76485e5f42de947756fff34398212ac52a3af9e Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 08:24:59 +0200 Subject: [PATCH 1/6] Update SQL Server action version in CI workflow --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 776a4994da..4f50c7ee92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -93,7 +93,7 @@ jobs: connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString catalog: nservicebus - name: Setup SQL Server persistence - uses: Particular/install-sql-server-action@v2.0.0 + uses: Particular/install-sql-server-action@4842cb123743242057dc5ce7534a82091b2286e6 if: matrix.test-category == 'SqlServerPersistence' with: connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString From f6c8a659d02743735146e31129afb78608d58081 Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 08:27:20 +0200 Subject: [PATCH 2/6] Update PostgreSQL setup action version in CI workflow --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4f50c7ee92..a0ce824c8e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -100,14 +100,14 @@ jobs: catalog: ServiceControl enable-full-text-search: true - name: Setup PostgreSQL - uses: Particular/setup-postgres-action@v2.0.0 + uses: Particular/setup-postgres-action@7f4ffa6a53c47b8ae6bac444151ef60512d94565 if: matrix.test-category == 'PostgreSQL' with: connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString registry-username: ${{ secrets.DOCKERHUB_USERNAME }} registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Setup PostgreSQL persistence - uses: Particular/setup-postgres-action@v2.0.0 + uses: Particular/setup-postgres-action@7f4ffa6a53c47b8ae6bac444151ef60512d94565 if: matrix.test-category == 'PostgreSQLPersistence' with: connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString From 3f744b9fb17ddc929c5095c433c95e8cae918d52 Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 12:08:53 +0200 Subject: [PATCH 3/6] Parallelize setup steps in CI workflow Refactor CI workflow to run setup steps in parallel for improved efficiency. --- .github/workflows/ci.yml | 70 +++++++++++++++++++++------------------- 1 file changed, 37 insertions(+), 33 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a0ce824c8e..6b7c711dd8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,12 +39,15 @@ jobs: uses: actions/checkout@v7.0.1 with: fetch-depth: 0 - - name: Setup .NET SDK - uses: actions/setup-dotnet@v6.0.0 - with: - global-json-file: global.json - - name: Download RavenDB Server - run: ./tools/download-ravendb-server.ps1 + - parallel: + - name: Setup WSL + uses: Particular/setup-wsl-action@7379e61a7d51f5b69b57156a98146b6938f0f5c2 + - name: Setup .NET SDK + uses: actions/setup-dotnet@v6.0.0 + with: + global-json-file: global.json + - name: Download RavenDB Server + run: ./tools/download-ravendb-server.ps1 - name: Build run: dotnet build src --configuration Release -graph - name: Zip PowerShell module @@ -86,33 +89,34 @@ jobs: if: matrix.test-category == 'AzureServiceBus' || matrix.test-category == 'AzureStorageQueues' || matrix.test-category == 'RabbitMQ' || matrix.test-category == 'PostgreSQL' || matrix.test-category == 'PostgreSQLPersistence' with: creds: ${{ secrets.AZURE_ACI_CREDENTIALS }} - - name: Setup SQL Server - uses: Particular/install-sql-server-action@v2.0.0 - if: matrix.test-category == 'SqlServer' - with: - connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString - catalog: nservicebus - - name: Setup SQL Server persistence - uses: Particular/install-sql-server-action@4842cb123743242057dc5ce7534a82091b2286e6 - if: matrix.test-category == 'SqlServerPersistence' - with: - connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString - catalog: ServiceControl - enable-full-text-search: true - - name: Setup PostgreSQL - uses: Particular/setup-postgres-action@7f4ffa6a53c47b8ae6bac444151ef60512d94565 - if: matrix.test-category == 'PostgreSQL' - with: - connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString - registry-username: ${{ secrets.DOCKERHUB_USERNAME }} - registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Setup PostgreSQL persistence - uses: Particular/setup-postgres-action@7f4ffa6a53c47b8ae6bac444151ef60512d94565 - if: matrix.test-category == 'PostgreSQLPersistence' - with: - connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString - registry-username: ${{ secrets.DOCKERHUB_USERNAME }} - registry-password: ${{ secrets.DOCKERHUB_TOKEN }} + - parallel: + - name: Setup SQL Server + uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + if: matrix.test-category == 'SqlServer' + with: + connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString + catalog: nservicebus + - name: Setup SQL Server persistence + uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + if: matrix.test-category == 'SqlServerPersistence' + with: + connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString + catalog: ServiceControl + enable-full-text-search: true + - name: Setup PostgreSQL + uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + if: matrix.test-category == 'PostgreSQL' + with: + connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString + registry-username: ${{ secrets.DOCKERHUB_USERNAME }} + registry-password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Setup PostgreSQL persistence + uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + if: matrix.test-category == 'PostgreSQLPersistence' + with: + connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString + registry-username: ${{ secrets.DOCKERHUB_USERNAME }} + registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Setup RabbitMQ uses: Particular/setup-rabbitmq-action@v1.7.1 if: matrix.test-category == 'RabbitMQ' From 2815b75bf48f0c81e94d340cae647c4cf385407e Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 12:13:35 +0200 Subject: [PATCH 4/6] Refactor CI workflow for SQL Server and PostgreSQL setup Reorganized setup steps for SQL Server and PostgreSQL in CI workflow, removing redundant parallel execution. --- .github/workflows/ci.yml | 63 ++++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6b7c711dd8..ad9bc72f76 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,13 +39,13 @@ jobs: uses: actions/checkout@v7.0.1 with: fetch-depth: 0 + - name: Setup .NET SDK + uses: actions/setup-dotnet@v6.0.0 + with: + global-json-file: global.json - parallel: - name: Setup WSL uses: Particular/setup-wsl-action@7379e61a7d51f5b69b57156a98146b6938f0f5c2 - - name: Setup .NET SDK - uses: actions/setup-dotnet@v6.0.0 - with: - global-json-file: global.json - name: Download RavenDB Server run: ./tools/download-ravendb-server.ps1 - name: Build @@ -89,34 +89,33 @@ jobs: if: matrix.test-category == 'AzureServiceBus' || matrix.test-category == 'AzureStorageQueues' || matrix.test-category == 'RabbitMQ' || matrix.test-category == 'PostgreSQL' || matrix.test-category == 'PostgreSQLPersistence' with: creds: ${{ secrets.AZURE_ACI_CREDENTIALS }} - - parallel: - - name: Setup SQL Server - uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 - if: matrix.test-category == 'SqlServer' - with: - connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString - catalog: nservicebus - - name: Setup SQL Server persistence - uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 - if: matrix.test-category == 'SqlServerPersistence' - with: - connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString - catalog: ServiceControl - enable-full-text-search: true - - name: Setup PostgreSQL - uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f - if: matrix.test-category == 'PostgreSQL' - with: - connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString - registry-username: ${{ secrets.DOCKERHUB_USERNAME }} - registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Setup PostgreSQL persistence - uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f - if: matrix.test-category == 'PostgreSQLPersistence' - with: - connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString - registry-username: ${{ secrets.DOCKERHUB_USERNAME }} - registry-password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Setup SQL Server + uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + if: matrix.test-category == 'SqlServer' + with: + connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString + catalog: nservicebus + - name: Setup SQL Server persistence + uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + if: matrix.test-category == 'SqlServerPersistence' + with: + connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString + catalog: ServiceControl + enable-full-text-search: true + - name: Setup PostgreSQL + uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + if: matrix.test-category == 'PostgreSQL' + with: + connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString + registry-username: ${{ secrets.DOCKERHUB_USERNAME }} + registry-password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Setup PostgreSQL persistence + uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + if: matrix.test-category == 'PostgreSQLPersistence' + with: + connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString + registry-username: ${{ secrets.DOCKERHUB_USERNAME }} + registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Setup RabbitMQ uses: Particular/setup-rabbitmq-action@v1.7.1 if: matrix.test-category == 'RabbitMQ' From f7743f652637b881cc2cee6a03bf2c72e9d86828 Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 13:19:45 +0200 Subject: [PATCH 5/6] Stable Co-authored-by: Daniel Marbach --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ad9bc72f76..5549b9aa2c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -45,7 +45,7 @@ jobs: global-json-file: global.json - parallel: - name: Setup WSL - uses: Particular/setup-wsl-action@7379e61a7d51f5b69b57156a98146b6938f0f5c2 + uses: Particular/setup-wsl-action@v1.0.0 - name: Download RavenDB Server run: ./tools/download-ravendb-server.ps1 - name: Build @@ -90,27 +90,27 @@ jobs: with: creds: ${{ secrets.AZURE_ACI_CREDENTIALS }} - name: Setup SQL Server - uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + uses: Particular/install-sql-server-action@v3.0.0 if: matrix.test-category == 'SqlServer' with: connection-string-env-var: ServiceControl_TransportTests_SQL_ConnectionString catalog: nservicebus - name: Setup SQL Server persistence - uses: Particular/install-sql-server-action@f7a459a07241cd9a66efdb99f3494cf1f04a3801 + uses: Particular/install-sql-server-action@v3.0.0 if: matrix.test-category == 'SqlServerPersistence' with: connection-string-env-var: ServiceControl_Persistence_SqlServer_ConnectionString catalog: ServiceControl enable-full-text-search: true - name: Setup PostgreSQL - uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + uses: Particular/setup-postgres-action@3.0.0 if: matrix.test-category == 'PostgreSQL' with: connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString registry-username: ${{ secrets.DOCKERHUB_USERNAME }} registry-password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Setup PostgreSQL persistence - uses: Particular/setup-postgres-action@31a965bb0d7a1d713e5cfadb154683584c1fbb1f + uses: Particular/setup-postgres-action@v3.0.0 if: matrix.test-category == 'PostgreSQLPersistence' with: connection-string-name: ServiceControl_Persistence_PostgreSql_ConnectionString From baa7b3f84c2849edc15d27b1bb03675fa30ca9e2 Mon Sep 17 00:00:00 2001 From: Daniel Marbach Date: Fri, 7 Aug 2026 13:21:14 +0200 Subject: [PATCH 6/6] Correct version Co-authored-by: Daniel Marbach --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5549b9aa2c..5cf6b62282 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -103,7 +103,7 @@ jobs: catalog: ServiceControl enable-full-text-search: true - name: Setup PostgreSQL - uses: Particular/setup-postgres-action@3.0.0 + uses: Particular/setup-postgres-action@v3.0.0 if: matrix.test-category == 'PostgreSQL' with: connection-string-name: ServiceControl_TransportTests_PostgreSQL_ConnectionString