linghengqian opened a new pull request, #39878:
URL: https://github.com/apache/shardingsphere/pull/39878
For #39769 .
Changes proposed in this pull request:
- Bump GraalVM Native Build Tools to `1.1.12`.
- Reopen `native-image-job-reports` to access the build logs visually.
- Upgrading `native-maven-plugin` from version `1.1.3` to `1.1.12` changed
the test ID directory strategy from "globally shared" to "isolated by plugin".
The native test cases in `test.natived.**` are executed via the JVM using the
`failsafe` plugin to collect test IDs (with `surefire`'s `skipTests` set to
`true` in the profile), resulting in IDs being written to
`target/maven-failsafe-plugin-test-ids/` (which is non-empty). However, the
profile bound the native execution to the `<goal>test</goal>` goal. In version
1.1.12, the `NativeTestMojo.configureEnvironment()` method matches
`currentGoal="test"` to the `surefire` plugin's `default-test` execution first;
consequently, the `native-image` argument
`-Djunit.platform.listeners.uid.tracking.output.dir` points to
`maven-surefire-plugin-test-ids/` (as confirmed by the CI command line). Since
`surefire` was skipped, this directory is empty, causing `getSelectors` to
throw an error. In version 1.1.3, both reading and writing used th
e same `target/test-ids` directory, allowing the old version to pass; this is
a behavioral change following the upgrade (related to
graalvm/native-build-tools#738 ). Since the native test cases are driven by
`failsafe`, the configuration should be updated to use the plugin's
corresponding `native:integration-test` goal (as only
`currentGoal="integration-test"` triggers the `failsafe` branch logic that
reads from `maven-failsafe-plugin-test-ids`).
```bash
Error: Feature defined by org.graalvm.junit.platform.JUnitPlatformFeature ...
Caused by: java.lang.RuntimeException: Cannot compute test selectors from
test ids.
at JUnitPlatformFeature.getSelectors(JUnitPlatformFeature.java:138)
```
---
Before committing this PR, I'm sure that I have checked the following
options:
- [x] My code follows the [code of
conduct](https://shardingsphere.apache.org/community/en/involved/conduct/code/)
of this project.
- [x] I have self-reviewed the commit code.
- [x] I have (or in comment I request) added corresponding labels for the
pull request.
- [x] I have passed maven check locally : `./mvnw clean install -B -T1C
-Dmaven.javadoc.skip -Dmaven.jacoco.skip -e`.
- [x] I have made corresponding changes to the documentation.
- [ ] I have added corresponding unit tests for my changes.
- [ ] I have updated the Release Notes of the current development version.
For more details, see [Update Release
Note](https://shardingsphere.apache.org/community/en/involved/contribute/contributor/)
- [ ] I have disclosed the tool and affected files or scope for any material
AI assistance, as required by the [AI-assisted contribution policy].
[AI-assisted contribution policy]:
https://github.com/apache/shardingsphere/blob/master/AI_POLICY.md
--
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]