Skip to content

Grails 7 Migration - Rundeck 6.0 Compatibility#6

Merged
fdevans merged 8 commits intomasterfrom
grails7-upgrade
Apr 8, 2026
Merged

Grails 7 Migration - Rundeck 6.0 Compatibility#6
fdevans merged 8 commits intomasterfrom
grails7-upgrade

Conversation

@fdevans
Copy link
Copy Markdown
Contributor

@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
  • Standardized Gradle to 8.14.3
  • Updated version to 2.0.6-grails7 format

Documentation

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

Testing

  • 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

- 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
….plugins

- Changed groupId: com.github.rundeck-plugins → com.rundeck.plugins
- Updated Axion to 1.17.2 with prefix='' (no 'v' prefix)
- Removed hardcoded version (2.0.4-grails7-upgrade-test)
- Replaced external build-zip with inline pluginZip task
- Added PackageCloud publishing configuration
- Version now managed dynamically from git tags

See: .temp/PLUGIN_TAGGING_ARCHITECTURE.md and PACKAGECLOUD_MIGRATION_PLAN.md
- Added ReplaceTokens filter to process @Version@, @author@, @url@ tokens
- Added tokens map with version, date, author, url, title, description, name
- Import org.apache.tools.ant.filters.ReplaceTokens

This fixes the YAML parsing error where unprocessed tokens like @Version@
were being included in the published plugin.yaml file.
… config

Merged master branch to get infrastructure updates:
- Updated Gradle wrapper to newer version
- Updated .gitignore

Preserved grails7-upgrade's critical configuration:
- PackageCloud groupId (com.rundeck.plugins)
- Axion 1.17.2 with no prefix tagging
- ZIP-as-JAR plugin structure

Resolution strategy: --ours for build.gradle, --theirs for Gradle wrapper files
Upgrade Gradle wrapper to match rundeck/rundeckpro (8.14.3) for consistency.
This ensures all plugins use the same build tooling version.
Copilot AI review requested due to automatic review settings April 2, 2026 22:29
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the plugin’s build and packaging setup to align with newer tooling, including an updated Gradle wrapper and a revised Gradle build that produces/publishes a packaged plugin artifact.

Changes:

  • Added plugin.yaml metadata and a contents/puppet_apply script provider.
  • Updated the Gradle wrapper to Gradle 8.14.3.
  • Reworked build.gradle to build a zip-style plugin artifact via a Jar task and publish it via maven-publish.

Reviewed changes

Copilot reviewed 1 out of 4 changed files in this pull request and generated 1 comment.

File Description
plugin.yaml Introduces plugin/provider metadata for the Puppet Apply step.
gradle/wrapper/gradle-wrapper.properties Updates Gradle wrapper distribution URL to 8.14.3.
contents/puppet_apply Adds the bash implementation executed by the script provider.
build.gradle Reworks plugin packaging and publishing configuration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -1,7 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionSha256Sum=31c55713e40233a8303827ceb42ca48a47267a0ad4bab9177123121e71524c26
Copy link

Copilot AI Apr 2, 2026

Choose a reason for hiding this comment

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

distributionUrl was bumped to Gradle 8.14.3 but distributionSha256Sum was not updated. With validateDistributionUrl=true, the wrapper will fail to download/verify because the checksum won’t match the new distribution. Update the SHA256 to the correct value for gradle-8.14.3-bin.zip (or remove the checksum if you don’t intend to validate).

Suggested change
distributionSha256Sum=31c55713e40233a8303827ceb42ca48a47267a0ad4bab9177123121e71524c26

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown

@ronaveva ronaveva left a comment

Choose a reason for hiding this comment

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

LGTM

@fdevans fdevans merged commit 687e7aa into master Apr 8, 2026
1 check 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