From 5e63d2534b4e8fcd13224b33b5894a383ce60381 Mon Sep 17 00:00:00 2001 From: "Piotr P. Karwasz" Date: Fri, 24 Jul 2026 18:52:12 +0200 Subject: [PATCH 1/2] Pass a native Windows path in `MAVEN_BASEDIR` to Maven builds Under `shell: bash` on Windows runners, MSYS2 rewrites the POSIX path computed by `bin/mvn` into the mixed `D:/...` form, which breaks plugins that handle paths as strings (e.g. Apache RAT 0.17-0.18). Providing `MAVEN_BASEDIR` short-circuits the computation, so `maven.multiModuleProjectDirectory` keeps its native form. Remove when https://github.com/apache/maven/issues/12537 is resolved. Assisted-By: Claude Fable 5 --- .github/workflows/build-reusable.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/build-reusable.yaml b/.github/workflows/build-reusable.yaml index d90aee0b..a80f728b 100644 --- a/.github/workflows/build-reusable.yaml +++ b/.github/workflows/build-reusable.yaml @@ -60,6 +60,9 @@ on: env: MAVEN_ARGS: ${{ inputs.maven-args }} + # Keep `maven.multiModuleProjectDirectory` a native Windows path under `shell: bash`, + # See https://github.com/apache/maven/issues/12537 for context. + MAVEN_BASEDIR: ${{ github.workspace }} # Explicitly drop all permissions inherited from the caller for security. # Reference: https://docs.github.com/en/actions/sharing-automations/reusing-workflows#access-and-permissions From 88f6706a70ad148294f4c74203f20df1d708e1a4 Mon Sep 17 00:00:00 2001 From: "Piotr P. Karwasz" Date: Fri, 24 Jul 2026 21:34:48 +0200 Subject: [PATCH 2/2] Set `MAVEN_BASEDIR` also in `verify-reproducibility-reusable.yaml` Assisted-By: Claude Fable 5 --- .github/workflows/verify-reproducibility-reusable.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/verify-reproducibility-reusable.yaml b/.github/workflows/verify-reproducibility-reusable.yaml index 99f791e6..e8728caa 100644 --- a/.github/workflows/verify-reproducibility-reusable.yaml +++ b/.github/workflows/verify-reproducibility-reusable.yaml @@ -38,6 +38,9 @@ on: env: MAVEN_ARGS: ${{ inputs.maven-args }} NEXUS_URL: ${{ inputs.nexus-url }} + # Keep `maven.multiModuleProjectDirectory` a native Windows path under `shell: bash`, + # See https://github.com/apache/maven/issues/12537 for context. + MAVEN_BASEDIR: ${{ github.workspace }} # Explicitly drop all permissions inherited from the caller for security. # Reference: https://docs.github.com/en/actions/sharing-automations/reusing-workflows#access-and-permissions