From 267c8f533a2255d737a141d8135823f168210409 Mon Sep 17 00:00:00 2001 From: Vikrant Puppala Date: Tue, 28 Apr 2026 07:16:17 +0000 Subject: [PATCH 1/3] Fix main CI: JFrog mirror bypass and Windows pwsh parse error Three CI workflows on main were failing: 1. runIntegrationTests.yml and bugCatcher.yml were caching ~/.m2, which restored a stale settings.xml on top of the JFrog-configured one written by the preceding Configure maven step. Maven then bypassed the mirror and tried to hit Maven Central directly, which the protected runner cannot reach. Narrow the cache path to ~/.m2/repository so settings.xml is preserved. 2. loggingTesting.yml's Get JFrog OIDC token and Configure maven steps used bash syntax (if [ ... ], heredoc) but had no shell directive. On Windows runners the default shell is pwsh, which fails to parse the bash if statement. Pin both steps to shell: bash. Co-authored-by: Isaac Signed-off-by: Vikrant Puppala --- .github/workflows/bugCatcher.yml | 6 +++++- .github/workflows/loggingTesting.yml | 2 ++ .github/workflows/runIntegrationTests.yml | 6 +++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/bugCatcher.yml b/.github/workflows/bugCatcher.yml index 303c0aae3..15d5c3f5f 100644 --- a/.github/workflows/bugCatcher.yml +++ b/.github/workflows/bugCatcher.yml @@ -81,7 +81,11 @@ jobs: - name: Cache Maven packages uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: - path: ~/.m2 + # Cache only the local repository — caching ~/.m2 itself would + # restore a stale settings.xml on top of the JFrog-configured one + # written above, causing Maven to bypass the mirror and hit Maven + # Central directly. + path: ~/.m2/repository key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 diff --git a/.github/workflows/loggingTesting.yml b/.github/workflows/loggingTesting.yml index 13093ba21..b364f6e02 100644 --- a/.github/workflows/loggingTesting.yml +++ b/.github/workflows/loggingTesting.yml @@ -44,6 +44,7 @@ jobs: java-version: '21' - name: Get JFrog OIDC token + shell: bash run: | set -euo pipefail @@ -70,6 +71,7 @@ jobs: echo "JFrog OIDC token obtained successfully" - name: Configure maven + shell: bash run: | set -euo pipefail diff --git a/.github/workflows/runIntegrationTests.yml b/.github/workflows/runIntegrationTests.yml index 7142b0a27..681302a6a 100644 --- a/.github/workflows/runIntegrationTests.yml +++ b/.github/workflows/runIntegrationTests.yml @@ -85,7 +85,11 @@ jobs: echo "Maven configured to use JFrog registry" - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: - path: ~/.m2 + # Cache only the local repository — caching ~/.m2 itself would + # restore a stale settings.xml on top of the JFrog-configured one + # written above, causing Maven to bypass the mirror and hit Maven + # Central directly. + path: ~/.m2/repository key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Create .pem file from secret From 238d65bc535158bd15f0c0372281f387e28ec3da Mon Sep 17 00:00:00 2001 From: Vikrant Puppala Date: Tue, 28 Apr 2026 07:41:01 +0000 Subject: [PATCH 2/3] =?UTF-8?q?Revert=20bugCatcher.yml=20change=20?= =?UTF-8?q?=E2=80=94=20keep=20PR=20scoped=20to=20broken=20workflows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bugCatcher only runs Mondays 00:00 UTC and is not blocking main CI. Dropping the cache-path fix here keeps this PR focused on the two workflows that are actually broken (runIntegrationTests, loggingTesting). The same fix can be applied to bugCatcher in a follow-up if desired. Co-authored-by: Isaac Signed-off-by: Vikrant Puppala --- .github/workflows/bugCatcher.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/bugCatcher.yml b/.github/workflows/bugCatcher.yml index 15d5c3f5f..303c0aae3 100644 --- a/.github/workflows/bugCatcher.yml +++ b/.github/workflows/bugCatcher.yml @@ -81,11 +81,7 @@ jobs: - name: Cache Maven packages uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: - # Cache only the local repository — caching ~/.m2 itself would - # restore a stale settings.xml on top of the JFrog-configured one - # written above, causing Maven to bypass the mirror and hit Maven - # Central directly. - path: ~/.m2/repository + path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 From a525139bed48c356d2aacf60016f21874660adfb Mon Sep 17 00:00:00 2001 From: Vikrant Puppala Date: Tue, 28 Apr 2026 07:43:53 +0000 Subject: [PATCH 3/3] Apply same cache-path fix to bugCatcher.yml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bugCatcher hits the same stale-cache bug as runIntegrationTests — its ~/.m2 cache restore overwrites the JFrog-configured settings.xml, making Maven bypass the mirror. Same one-line fix. Co-authored-by: Isaac Signed-off-by: Vikrant Puppala --- .github/workflows/bugCatcher.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/bugCatcher.yml b/.github/workflows/bugCatcher.yml index 303c0aae3..15d5c3f5f 100644 --- a/.github/workflows/bugCatcher.yml +++ b/.github/workflows/bugCatcher.yml @@ -81,7 +81,11 @@ jobs: - name: Cache Maven packages uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: - path: ~/.m2 + # Cache only the local repository — caching ~/.m2 itself would + # restore a stale settings.xml on top of the JFrog-configured one + # written above, causing Maven to bypass the mirror and hit Maven + # Central directly. + path: ~/.m2/repository key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2