jamesfredley opened a new pull request, #15415:
URL: https://github.com/apache/grails-core/pull/15415
## Summary
- Add `indy: [false, true]` matrix dimension to all functional test CI jobs
to ensure Groovy invokedynamic is tested both enabled and disabled
- Add `-PgrailsIndy` property toggle to
`grails-extension-gradle-config.gradle` so all 45 test example projects respect
the CI matrix setting
- Include indy status in job names for clear CI dashboard visibility
## Context
PR #15375 moved indy configuration from generated `build.gradle` files to
the Grails Gradle Plugin (`GrailsExtension.indy`, default: `false`). After that
merge, CI was only testing with the default `indy=false`, leaving `indy=true`
completely untested. If a user sets `grails { indy = true }`, we had zero CI
coverage for that code path.
## Changes
### `gradle/grails-extension-gradle-config.gradle`
- Added conditional `indy` property toggle inside the `grails { }` block
- When `-PgrailsIndy=true` is passed, sets `grails { indy = true }` on all
test example projects
- All 45 test example build files apply this config, so no per-project
changes needed
### `.github/workflows/gradle.yml`
- **Functional Tests**: 3 Java versions x 2 indy = 6 jobs (was 3)
- **Hibernate5 Functional Tests**: 2 Java versions x 2 indy = 4 jobs (was 2)
- **MongoDB Functional Tests**: 2 Java versions x 2 MongoDB versions x 2
indy = 8 jobs (was 4)
- **Build Grails Forge**: 2 Java versions x 2 indy = 4 jobs (was 2)
- Job names now include `indy=true/false` for dashboard clarity
## Note on Forge Tests
The forge `test-core` tests use Gradle TestKit, which creates an isolated
build environment. The generated apps resolve the Grails Gradle plugin from
Maven repositories rather than the local composite build, so the `-PgrailsIndy`
property is passed to the forge build itself. Full end-to-end indy coverage for
forge-generated apps would require additional work to inject `grails { indy =
true }` into the Rocker template or TestKit configuration.
Relates to #15321, follow-up to #15375
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]