Skip to content

Add GitHub Actions CI workflow for Java 17#546

Open
devin-ai-integration[bot] wants to merge 3 commits intomasterfrom
devin/1776281984-add-java17-ci-workflow
Open

Add GitHub Actions CI workflow for Java 17#546
devin-ai-integration[bot] wants to merge 3 commits intomasterfrom
devin/1776281984-add-java17-ci-workflow

Conversation

@devin-ai-integration
Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration Bot commented Apr 15, 2026

Summary

The repository had no CI/CD configuration files. This PR adds a GitHub Actions workflow (.github/workflows/build.yml) that builds and tests the project on every push and pull request to master, using JDK 17 (Temurin distribution).

The workflow:

  • Checks out the code
  • Sets up JDK 17 via actions/setup-java@v4
  • Configures Gradle caching via gradle/actions/setup-gradle@v4
  • Runs ./gradlew build -x spotlessJava -x spotlessCheck

Spotless checks (spotlessJava, spotlessCheck) are excluded because the repo uses com.diffplug.spotless v6.2.1 with googleJavaFormat(), which is incompatible with JDK 17 (crashes with InvocationTargetException due to missing --add-exports for jdk.compiler internals). Fixing this would require upgrading Spotless in build.gradle, which is out of scope for this PR.

Note: build.gradle still has sourceCompatibility = '11' / targetCompatibility = '11'. This is intentional — only CI/CD files were in scope. JDK 17 can compile Java 11 targets without issue.

Review & Testing Checklist for Human

  • Confirm you are comfortable skipping Spotless formatting checks in CI. If formatting enforcement is desired, Spotless would need to be upgraded in build.gradle (separate PR)
  • Verify the build and tests pass in CI — this is the first workflow for this repo
  • Confirm you're comfortable with sourceCompatibility = '11' in build.gradle while CI uses JDK 17 (this works, but if a full Java 17 migration is planned, build.gradle would need updating separately)

Notes

  • No existing CI/CD files (.travis.yml, Jenkinsfile, Dockerfile, .circleci/config.yml, etc.) were found in the repository.
  • Gradle's build task includes test in its default lifecycle, so tests are executed as part of the single ./gradlew build command.

Link to Devin session: https://app.devin.ai/sessions/7bee749b31de4e2f98235117e573f4e7
Requested by: @shayanshafii


Open with Devin

Co-Authored-By: shayan <shayan@cognition.ai>
@devin-ai-integration
Copy link
Copy Markdown
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

Copy link
Copy Markdown
Author

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

devin-ai-integration Bot and others added 2 commits April 15, 2026 19:41
Co-Authored-By: shayan <shayan@cognition.ai>
Co-Authored-By: shayan <shayan@cognition.ai>
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.

1 participant