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
This commit is contained in:
@@ -49,6 +49,13 @@ jobs:
|
|||||||
- name: Build NonWindows solution
|
- name: Build NonWindows solution
|
||||||
run: dotnet build src/ZB.MOM.WW.MxGateway.NonWindows.slnx -c Release
|
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.
|
# IPC-01 / IPC-19 / IPC-20: descriptor set + Contracts/Generated must match the current protos.
|
||||||
- name: Codegen / descriptor freshness
|
- name: Codegen / descriptor freshness
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
@@ -93,6 +100,11 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
distribution: temurin
|
distribution: temurin
|
||||||
java-version: '17'
|
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
|
- name: Gradle test
|
||||||
working-directory: clients/java
|
working-directory: clients/java
|
||||||
run: gradle test
|
run: gradle test
|
||||||
|
|||||||
Reference in New Issue
Block a user