apache / apache/seatunnel

[Feature][CI] Run the seatunnel-cli Python test suite in CI

Closed
#12,296 1 comment 0 reactions 1 assignee Claimed by @SEZ9 View on GitHub
Dominant language
Java
Stars
9.7k
Forks
2.4k
Avg merge
3d 17h
Merged PRs (30d)
210

Description

### Search before asking

- [X] I had searched in the [feature](https://github.com/apache/seatunnel/issues?q=is%3Aissue+label%3A%22Feature%22) and found no similar feature requirement.

### Description

The Python test suite under `seatunnel-cli/` never runs in CI. It currently holds 103 test functions across 10 files under `seatunnel-cli/tests/`, and all of them are verified only on the contributor's machine.

Concretely:

- no workflow invokes `pytest`;
- `setup-python` in `.github/workflows/backend.yml` exists only to run the change-detection script;
- the `benchmarks` path filter matches `seatunnel-benchmarks/**` and `tools/benchmarks/**`, not `seatunnel-cli/**`.

So a PR touching `seatunnel-cli` shows a green Build check that covers none of the code it changed. The gap came in with the original CLI work and widens with every follow-up, including the benchmark suites currently under review.

### Usage Scenario

A reviewer looking at a `seatunnel-cli` PR should be able to rely on the checks. Adding a small standalone workflow that runs `pytest` (and lint) for `seatunnel-cli` on pull requests touching that path closes the gap. The workflow must be scoped by path so it does not add time to unrelated PRs, and it must not require network or model credentials — the suite is offline.

### Related issues

_No response_

### Are you willing to submit a PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.