Skip to content

Grails 7 Migration - Rundeck 6.0 Compatibility#40

Merged
fdevans merged 27 commits intomasterfrom
grails7-upgrade
Apr 7, 2026
Merged

Grails 7 Migration - Rundeck 6.0 Compatibility#40
fdevans merged 27 commits intomasterfrom
grails7-upgrade

Conversation

@fdevans
Copy link
Copy Markdown

@fdevans fdevans commented Apr 2, 2026

Overview

Updates this plugin for Grails 7 / Rundeck 6.0 compatibility.

Key Changes

  • Upgraded to Java 17
  • Updated to Grails 7 / Groovy 4 / Spring Boot 3
  • Modernized GitHub Actions workflows (Java 17, updated actions, YAML fixes)
  • Standardized Gradle to 8.14.3
  • Updated CVEs (commons-lang3)
  • Updated version to 1.1.20-grails7 format

Documentation

Migration details and handoff documentation: .github/Grails7-Handoff/

Testing

  • All CI workflows passing on grails7-upgrade branch
  • Plugin builds and tests successfully with Java 17
  • Compatible with Rundeck 6.0 (Grails 7)

Notes

  • Version uses temporary -grails7 suffix (will be removed at release)
  • Maintains backward compatibility with Rundeck 5.x

fdevans added 24 commits January 2, 2026 15:12
- Update groupId to com.github.rundeck-plugins
- Update version to X.Y.Z-grails7-upgrade-test
- Update rundeck-core dependency to 6.0.0-SNAPSHOT
- Enhanced diagnostics and error logging
- Fixed test compatibility issues (JUnit 4 vs 5, Java 17)
- Updated for Spring Boot 3 / Java 17
- OSSRH sunset on June 30, 2025, migrated to Central Portal
- Repository: https://central.sonatype.com/repository/maven-snapshots/
- Uses includeGroup('org.rundeck') to resolve all org.rundeck modules
- Resolves rundeck-core and its transitive dependencies
- Tested successfully in SSHJ plugin CI build
- Reference: https://central.sonatype.org/publish/publish-portal-upload/#consuming--snapshot-releases-for-your-project
- Add jitpack.yml to specify Java 17 for JitPack builds
- Bump version to 1.1.10-grails7-upgrade-test
- JitPack will now build with:
  - Java 17 (from jitpack.yml)
  - rundeck-core:6.0.0-SNAPSHOT from Central Portal Snapshots
- Tested successfully with sshj-plugin v0.1.23
…OT resolution

- Required for local builds and JitPack
- Resolves org.rundeck dependencies from Central Portal (OSSRH sunset)
- Previous tag v1.1.10-grails7-upgrade-test was missing Central Portal Snapshots repo
- This version includes all required dependencies for JitPack build
JitPack was failing because jitpack.yml specified openjdk11,
but rundeck-core:6.0.0-SNAPSHOT requires Java 17.

This commit updates jitpack.yml to use openjdk17.
- Change commons-lang3 from 3.18.0 to 3.17.0 to match Spring Boot BOM 3.5.8
- Move commons-lang3 to pluginLibs configuration for proper packaging
- Bump version to 1.1.13-grails7-upgrade-test
- Change from 3.17.0 to 3.18.0 to match other plugins
- Bump version to 1.1.14-grails7-upgrade-test
- Change from 3.18.0 to 3.17.0
- Required for Grails 7 / Spring Boot compatibility
- Bump version to 1.1.15-grails7-upgrade-test
- JitPack had infrastructure timeout on 1.1.15
- No code changes, just version bump to bypass JitPack cache
JitPack failed to publish artifacts for 1.1.16 (build succeeded but modules array empty).
Bumping version to trigger fresh build attempt.
- Removed copyToLib task (old pattern)
- Updated jar task to directly bundle dependencies using into('lib')
- Simplified build process to match modern Gradle best practices
- Fixed Source-Link URL to point to correct repository
- All dependencies still bundled correctly in lib/ directory
- All Rundeck plugin manifest attributes preserved

This modernization should resolve JitPack publication issues seen in 1.1.15-1.1.17.
….plugins

- Changed groupId: com.github.rundeck-plugins → com.rundeck.plugins
- Added Axion scmVersion with prefix='' (no 'v' prefix)
- Removed hardcoded version (1.1.18-grails7-upgrade-test)
- Added PackageCloud publishing configuration
- Version now managed dynamically from git tags

See: .temp/PLUGIN_TAGGING_ARCHITECTURE.md and PACKAGECLOUD_MIGRATION_PLAN.md
Security fix:
- commons-lang3 3.17.0 -> 3.18.0 (fixes StackOverflowError in ClassUtils.getClass)

Merged origin/master (already up to date).
gradle.yml:
- Fix typo: 'JDK 17.8' -> 'JDK 17'
- Update setup-java@v1 -> v4
- Update checkout@v2 -> v4

release.yml:
- Update Java 11 -> 17 (matches sourceCompatibility)
- Update setup-java@v1 -> v4
- Update checkout@v2 -> v4
- Replace deprecated create-release + upload-release-asset with gh CLI
- Fix set-output syntax (GITHUB_OUTPUT)

Addresses Node.js 20 deprecation warnings.
- Update actions/checkout@v2 to v4
- Update actions/setup-java@v1 to v4 with zulu distribution
- Fix ::set-output syntax to use GITHUB_OUTPUT
- Fix typo in step name: "Set up JDK 17.8" to "Set up JDK 17"
- Align Java version to 17 across all workflows

These changes ensure workflows remain functional after Node.js 20 deprecation in September 2026.
Upgrade Gradle wrapper to match rundeck/rundeckpro (8.14.3) for consistency.
This ensures all plugins use the same build tooling version.
Corrected distribution parameter indentation to align with java-version.
This fixes GitHub Actions validation errors.
Gradle wrapper upgrade updates the wrapper scripts themselves.
Copilot AI review requested due to automatic review settings April 2, 2026 22:34

This comment was marked as outdated.

@fdevans fdevans merged commit b1553bc into master Apr 7, 2026
1 of 2 checks passed
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.

3 participants