Aias00 opened a new issue, #7478:
URL: https://github.com/apache/shenyu/issues/7478
## Description
The E2E case resolver does not include two existing E2E modules:
`shenyu-e2e-case-sofa` and `shenyu-e2e-case-cluster`.
The modules are declared in the E2E case reactor:
- `shenyu-e2e/shenyu-e2e-case/pom.xml:32` declares `shenyu-e2e-case-cluster`
- `shenyu-e2e/shenyu-e2e-case/pom.xml:40` declares `shenyu-e2e-case-sofa`
Both modules have compose scripts that run their tests:
-
`shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-sofa/compose/script/e2e-sofa-sync-compose.sh:46`
-
`shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/compose/script/e2e-cluster-jdbc-compose.sh:48`
-
`shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/compose/script/e2e-cluster-zookeeper-compose.sh:48`
However, `.github/scripts/resolve-test-case-matrix.sh` never emits those
cases:
- `add_e2e_all()` lists storage, HTTP, Spring Cloud, Apache Dubbo, gRPC,
WebSocket, RocketMQ logging, and RabbitMQ logging only
(`.github/scripts/resolve-test-case-matrix.sh:56-65`).
- `map_direct_case_path()` maps direct case paths for the same set and has
no SOFA or cluster branch
(`.github/scripts/resolve-test-case-matrix.sh:242-270`).
- `map_domain_path()` has no `*sofa*` or `*cluster*` E2E branch
(`.github/scripts/resolve-test-case-matrix.sh:311-399`).
- The final `case_config` JSON has no SOFA or cluster script/case mapping
(`.github/scripts/resolve-test-case-matrix.sh:448-483`).
The `e2e-k8s` workflow uses this resolver output to decide which compose
scripts to execute (`.github/workflows/e2e-k8s.yml:94-95`) and later runs `bash
./shenyu-e2e/shenyu-e2e-case/${{ matrix.case }}/compose/script/${{
matrix.script }}.sh` (`.github/workflows/e2e-k8s.yml:250`, `:371`).
## Impact
Changes isolated to the SOFA E2E module, cluster E2E module, SOFA
plugin/client/example code, or cluster-specific code can result in no matching
E2E case being scheduled. Even broad changes that mark `full_required=true`
still omit these two cases because `add_e2e_all()` does not add them.
This weakens CI coverage for existing E2E suites and can let SOFA or cluster
regressions merge without their intended compose tests.
## Suggested fix
Teach the resolver about both case families:
- add SOFA and cluster scripts to `add_e2e_all()`;
- add direct-path branches for `shenyu-e2e-case-sofa/*` and
`shenyu-e2e-case-cluster/*`;
- add domain branches for relevant SOFA and cluster production paths;
- add `case_config` entries mapping scripts to case directories and example
projects;
- extend `.github/scripts/resolve-test-case-matrix-test.sh` with direct-path
and full-run expectations.
## Related existing issues
No duplicate was found in the supplied issue/PR baselines. Existing #5529
covers logging-plugin E2E work, #5225 covers Motan E2E, and open/closed cluster
runtime issues are separate from CI matrix selection.
## Reviewed Revision And Validation
Apache ShenYu 2.7.2-SNAPSHOT, master at
a89b6a2338c24e978428b731e8f1edce86022418. Severity: medium. Confidence: high.
Resolver omission was reproduced using Bash5 in Docker; isolated review
checked workflow consumers, actual modules/scripts and all resolver tables.
Current source references:
- `shenyu-e2e/shenyu-e2e-case/pom.xml:32`
- `shenyu-e2e/shenyu-e2e-case/pom.xml:40`
- `.github/scripts/resolve-test-case-matrix.sh:56`
- `.github/scripts/resolve-test-case-matrix.sh:242`
- `.github/scripts/resolve-test-case-matrix.sh:311`
No implementation fix or full deployed end-to-end validation was performed
by this review. Source-flow and runtime evidence are distinguished above.
--
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]