Grails 7 Migration - Rundeck 6.0 Compatibility#25
Merged
Conversation
- 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
… Snapshots - Add jitpack.yml to specify Java 17 for JitPack builds - Bump version to 1.0.12-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
JitPack build was failing because it was trying to resolve http-step:1.1.9-grails7-upgrade-test which doesn't exist. Updated to current version: 1.1.12-grails7-upgrade-test
- Change commons-lang3 from 3.18.0 to 3.17.0 to match Spring Boot BOM 3.5.8 - Update http-step dependency to 1.1.13-grails7-upgrade-test - Bump version to 1.0.14-grails7-upgrade-test
- Change from 3.17.0 to 3.18.0 to match other plugins - Update http-step dependency to 1.1.14-grails7-upgrade-test - Bump version to 1.0.15-grails7-upgrade-test
- Change from 3.18.0 to 3.17.0 - Update http-step dependency to 1.1.15-grails7-upgrade-test - Required for Grails 7 / Spring Boot compatibility - Bump version to 1.0.16-grails7-upgrade-test
- Update http-step dependency to 1.1.16 - JitPack had infrastructure timeout on previous versions - No code changes, just version bump to bypass JitPack cache
…ndency to 1.1.17 JitPack failed to publish artifacts for 1.0.17 (build succeeded but modules array empty). Bumping version to trigger fresh build attempt.
- Updated http-step dependency to 1.1.18-grails7-upgrade-test
- Removed copyToLib task (old pattern)
- Updated jar task to directly bundle dependencies using into('lib')
- Fixed rootProject.name in settings.gradle to match Maven artifactId
- Simplified build process to match modern Gradle best practices
- All dependencies still bundled correctly in lib/ directory
- All Rundeck plugin manifest attributes preserved
This modernization should resolve JitPack publication issues seen in 1.0.16-1.0.18.
Working around JitPack infrastructure timeout issue. Build succeeded, artifacts found, but container finalization timed out in 1.0.19.
Eliminated inefficiencies causing JitPack issues: - Updated axion-release plugin from 1.13.4 to 1.17.2 - Removed legacy buildscript block (Gradle 4.x pattern) - Removed redundant 'apply plugin' declarations - Removed unnecessary groovy-all dependency - Fixed CRITICAL duplicate dependency bundling: * Set transitive=false on http-step dependency * Eliminated duplicate commons-lang3, httpclient, gson, httpcore * JAR size reduced from 4.5MB to 2.1MB (53% smaller!) - Removed redundant httpclient/commons-lang3 declarations - Removed now-unnecessary dependencySubstitution block - Simplified test configuration (useJUnit vs useJUnitPlatform) - Cleaned up repository ordering The duplicate bundling was likely confusing JitPack's artifact scanner. This is the cleanest version yet.
….plugins - Changed groupId: com.github.rundeck-plugins → com.rundeck.plugins - Added Axion scmVersion with prefix='' (no 'v' prefix) - Removed hardcoded version (1.0.21-grails7-upgrade-test) - Updated http-step dependency to use com.rundeck.plugins groupId and version 1.1.19-grails7 - Added PackageCloud repository for dependency resolution - Added PackageCloud publishing configuration - Version now managed dynamically from git tags See: .temp/PLUGIN_TAGGING_ARCHITECTURE.md and PACKAGECLOUD_MIGRATION_PLAN.md
- Added 'groovy' plugin to compile Groovy source files - Added groovy-all:4.0.29 dependency for Groovy compilation - Added httpclient:4.5.14 and commons-lang3:3.17.0 for compilation (http-step bundles these but doesn't expose them transitively) This fixes ClassNotFoundException: com.rundeck.plugin.HttpNotificationPlugin The JAR was missing compiled classes because Groovy files weren't being compiled.
Security fix: - commons-lang3 3.17.0 -> 3.18.0 (fixes StackOverflowError in ClassUtils.getClass) - Update bundled http-step dependency to 1.1.21-grails7 (includes same fix) Java 17 compatibility: - Replace cglib-nodep 3.3.0 with ByteBuddy 1.14.11 (cglib unmaintained) - Update objenesis 1.4 -> 3.4 for Java 17 Merged origin/master (1 commit: CVE fixes).
- Update actions/checkout@v2 to v4 - Update actions/setup-java@v1 to v4 with zulu distribution - Replace deprecated actions/create-release and actions/upload-release-asset with gh CLI - Fix ::set-output syntax to use GITHUB_OUTPUT - Align Java version to 17 across all workflows These changes ensure workflows remain functional after Node.js 20 deprecation in September 2026.
Added distribution: 'zulu' to all setup-java@v4 calls. This parameter is required in v4 and was causing workflow failures.
Version 1.1.21-grails7 is tagged but not yet published to PackageCloud, causing CI build failures. Reverting to last published version.
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.
- Fixed distribution parameter indentation (must align with java-version) - Updated step name labels to 'Set up JDK 17' - Updated Gradle wrapper scripts to 8.14.3
ronaveva
approved these changes
Apr 7, 2026
ronaveva
left a comment
There was a problem hiding this comment.
jitpack.yml seems irrelevant, otherwise looks ok
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Updates this plugin for Grails 7 / Rundeck 6.0 compatibility.
Key Changes
Documentation
Migration details and handoff documentation: .github/Grails7-Handoff/
Testing
Notes
-grails7suffix (will be removed at release)