From a36844d59d05466e7db0a4fda189ecf8d98e88cd Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Fri, 10 Jul 2026 03:34:10 -0400 Subject: [PATCH] ci(tst-03): provision pwsh + gradle for the self-hosted act runner The portable and java jobs assumed tools GitHub-hosted runners preinstall but the self-hosted catthehacker act image lacks: `pwsh` (the codegen freshness check uses `shell: pwsh`) and `gradle` (the java job runs `gradle test`; the repo has no wrapper). Install PowerShell as a .NET global tool (the SDK is already set up) and provision gradle via gradle/actions/setup-gradle. No behavior change on GitHub-hosted runners, which already have both. Claude-Session: https://claude.ai/code/session_01DMXXvNuPekkkrTEyPNxEkW --- .gitea/workflows/ci.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 9c6cbdb..d291262 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -49,6 +49,13 @@ jobs: - name: Build NonWindows solution run: dotnet build src/ZB.MOM.WW.MxGateway.NonWindows.slnx -c Release + # GitHub-hosted runners ship pwsh; the self-hosted act image does not. Install it as a + # .NET global tool (the SDK is already set up above) so the codegen check's `shell: pwsh` works. + - name: Install PowerShell (pwsh) + run: | + dotnet tool install --global PowerShell + echo "$HOME/.dotnet/tools" >> "$GITHUB_PATH" + # IPC-01 / IPC-19 / IPC-20: descriptor set + Contracts/Generated must match the current protos. - name: Codegen / descriptor freshness shell: pwsh @@ -93,6 +100,11 @@ jobs: with: distribution: temurin java-version: '17' + # GitHub-hosted runners ship gradle on PATH; the self-hosted act image does not, and the repo + # has no gradle wrapper. Provision gradle (latest stable, matching the local homebrew build). + - uses: gradle/actions/setup-gradle@v4 + with: + gradle-version: current - name: Gradle test working-directory: clients/java run: gradle test