LegendPei opened a new pull request, #727: URL: https://github.com/apache/incubator-seata-samples/pull/727
<!-- Please make sure you have read and understood the contributing guidelines --> ### Ⅰ. Describe what this PR did Introduce an E2E environment compatibility matrix for Seata samples. This PR adds CI support for running the existing E2E test suite against different environment combinations, including: - Different build/runtime JDK versions - Different MySQL images - Different MySQL connector versions - Different system architectures, including `linux/amd64` and `linux/arm64` Main changes include: - Add a GitHub Actions E2E matrix with 6 representative combinations. - Allow CI to inject the runtime JDK Docker image through `E2E_JDK_BASE_IMAGE`. - Allow CI to override the MySQL Docker image through `E2E_MYSQL_IMAGE`. - Extract MySQL connector versions into Maven properties and allow CI override through `E2E_MYSQL_CONNECTOR_VERSION`. - Allow Docker build/compose platform override through `E2E_DOCKER_PLATFORM`. - Fix the JDK 11 runtime image mapping. - Add MySQL 8 native password compatibility for E2E containers. - Support native ARM runners by using Docker Compose v2 through a `docker-compose` wrapper. - Stabilize E2E result file paths by using a fixed `/seata-e2e` working directory and absolute result-file paths. - Add required JDK module `--add-opens` options for old Spring Boot / Netty based samples running on JDK 17. ### Ⅱ. Does this pull request fix one issue? fixes apache/incubator-seata#7178 ### Ⅲ. Why don't you add test cases (unit test/integration test)? This PR updates the E2E test infrastructure itself rather than adding new business logic. The coverage is provided by the GitHub Actions E2E matrix, which reuses the existing Seata samples and E2E cases with different CI-provided runtime configurations. ### Ⅳ. Describe how to verify it The PR can be verified by running the GitHub Actions workflow `Seata E2E Test`. The following matrix jobs passed in my fork: - `E2E jdk8-mysql57-amd64` - `E2E jdk11-mysql57-amd64` - `E2E jdk17-mysql57-amd64` - `E2E jdk11-mysql80-amd64` - `E2E jdk17-mysql80-amd64` - `E2E jdk17-mysql80-arm64` Local verification performed: ```bash cd e2e-test mvn -q -pl e2e-test-builder,e2e-test-runner -am -DskipTests package ###Ⅴ. Special notes for reviews Fixes https://github.com/apache/incubator-seata/issues/7178 -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
