Skip to content

Conversation

sbglasius
Copy link

Co-pilot summary:
This pull request modernizes the project's build, CI/CD, and release infrastructure by replacing legacy Travis CI configuration with GitHub Actions workflows, updating dependency management, and aligning the project with current Grails and Java versions. The changes also introduce automated release note generation and improve reproducible build practices.

Continuous Integration and Release Automation

  • Added GitHub Actions workflows for CI (gradle.yml), release publishing (release.yml), and automated release note drafting (release-notes.yml), replacing the old Travis CI setup. This includes matrix builds for Java 17 and 21, snapshot publishing, documentation deployment, and artifact signing for reproducible releases. [1] [2] [3]

Dependency and Build Configuration Updates

  • Updated gradle.properties to use Grails 7.x and Java 17, enabled Gradle daemon and parallel builds, and increased JVM memory.
  • Upgraded Gradle wrapper to version 8.14.3 for compatibility with newer Grails and Java versions.
  • Added buildSrc/build.gradle to support custom Gradle plugins and Grails BOM-based dependency management.
  • Introduced Renovate configuration for automated dependency updates and grouping Grails/Groovy dependencies.

Release Management Improvements

  • Added Release Drafter configuration for automated release notes, PR labeling, and changelog categorization.

Documentation and Licensing

  • Minor correction to the Apache License template for clarity in the LICENSE file.

Legacy Cleanup

  • Removed the legacy .travis.yml file, fully migrating CI/CD to GitHub Actions.

@sbglasius sbglasius requested review from jdaugherty and matrei August 20, 2025 14:51
@sbglasius
Copy link
Author

@matrei Thank you for your thorough review 🙂

Comment on lines +42 to +48
run: ./gradlew docs
- name: "📤 Publish Snapshot Documentation to Github Pages"
uses: apache/grails-github-actions/deploy-github-pages@asf
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GRADLE_PUBLISH_RELEASE: 'false'
SOURCE_FOLDER: build/docs
Copy link

Choose a reason for hiding this comment

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

Is there a docs task in this project?

Comment on lines +121 to +131
- name: "📖 Generate Documentation"
if: ${{ env.DOCUMENTATION != 'false' }}
run: ./gradlew docs
- name: "📤 Publish Documentation to Github Pages"
if: ${{ env.DOCUMENTATION != 'false' }}
uses: apache/grails-github-actions/deploy-github-pages@asf
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GRADLE_PUBLISH_RELEASE: 'true'
SOURCE_FOLDER: build/docs
VERSION: ${{ needs.publish.outputs.release_version }}
Copy link

Choose a reason for hiding this comment

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

Is there a docs task in this project?

Copy link

@matrei matrei left a comment

Choose a reason for hiding this comment

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

My pleasure @sbglasius! There still seems to be unresolved comments from my previous review.

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