Skip to content

Fix main CI: JFrog mirror bypass and Windows pwsh parse error#1428

Merged
vikrantpuppala merged 4 commits intomainfrom
fix-main-ci-jfrog-cache
Apr 28, 2026
Merged

Fix main CI: JFrog mirror bypass and Windows pwsh parse error#1428
vikrantpuppala merged 4 commits intomainfrom
fix-main-ci-jfrog-cache

Conversation

@vikrantpuppala
Copy link
Copy Markdown
Collaborator

Summary

Three CI workflows on main have been failing. This PR fixes the root causes.

1. Integration Tests Workflow - Main Branch (failing 30+ runs in a row since Apr 8)

  • The cache step uses path: ~/.m2 with a long-lived restore-key ${{ runner.os }}-m2. It restores a stale cache from before the JFrog OIDC migration, whose ~/.m2/settings.xml (the github-server one written by actions/setup-java) overwrites the JFrog mirror config that the preceding "Configure maven" step just wrote.
  • Maven then tries to resolve from repo.maven.apache.org directly, which the protected runner cannot reach: Could not transfer artifact ... from/to central (https://repo.maven.apache.org/maven2): Remote host terminated the handshake.
  • Fix: narrow path to ~/.m2/repository so settings.xml is left alone (matches the pattern used by warmMavenCache.yml).

2. Weekly bug catcher — same root cause as #1

Same fix in bugCatcher.yml.

3. Test JDBC Logging (Windows jobs failing since Apr 27)

  • The "Get JFrog OIDC token" step uses bash syntax (if [ -z "$X" ], set -euo pipefail) but has no shell: directive. On Windows runners the default shell is pwsh, which fails parsing the bash if with Missing '(' after 'if'. The "Configure maven" step has the same problem (bash heredoc).
  • Fix: pin both steps to shell: bash. Linux jobs were unaffected because their default shell is already bash.

Test plan

  • After merge, confirm Integration Tests Workflow - Main Branch passes on the next push to main
  • After merge, confirm Test JDBC Logging Windows jobs pass on the next push to main
  • Next scheduled Weekly bug catcher run (Mondays 00:00 UTC) is green

NO_CHANGELOG=true
OVERRIDE_FREEZE=true

This pull request and its description were written by Isaac.

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 <vikrant.puppala@databricks.com>
@vikrantpuppala vikrantpuppala requested a review from a team as a code owner April 28, 2026 07:16
@vikrantpuppala
Copy link
Copy Markdown
Collaborator Author

Recreating with rebased commit and bugCatcher.yml change dropped — see new PR.

@vikrantpuppala vikrantpuppala deleted the fix-main-ci-jfrog-cache branch April 28, 2026 07:37
@vikrantpuppala vikrantpuppala restored the fix-main-ci-jfrog-cache branch April 28, 2026 07:40
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 <vikrant.puppala@databricks.com>
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 <vikrant.puppala@databricks.com>
@vikrantpuppala vikrantpuppala enabled auto-merge (squash) April 28, 2026 07:49
@vikrantpuppala vikrantpuppala merged commit d54693a into main Apr 28, 2026
15 checks passed
@vikrantpuppala vikrantpuppala deleted the fix-main-ci-jfrog-cache branch April 28, 2026 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants