ci: add GitHub Actions workflow for lint and smoke test#309
ci: add GitHub Actions workflow for lint and smoke test#309Sunrisea merged 3 commits intonacos-group:masterfrom
Conversation
Add CI pipeline with two jobs: - lint: ruff check with pyflakes rules (F) on v2/ directory, ignoring F401 (unused imports) for now, excluding auto-generated grpcauto directory - smoke-test: Python 3.9/3.11/3.13 matrix, verify module imports Closes nacos-group#305 Signed-off-by: cxhello <caixiaohuichn@gmail.com>
|
Thanks for the contribution! One issue I noticed after merging: the two target branches ( Branch dependency analysis
Impact
Suggested fixSince this PR has already been merged to # master branch: update to match Python 3.10+ requirement
python-version: ['3.10', '3.12', '3.13'] |
Both branches use PEP 604 union type syntax (X | None) which requires Python 3.10+. Update smoke-test matrix to ['3.10', '3.12', '3.13']. Signed-off-by: cxhello <caixiaohuichn@gmail.com>
|
Thanks for the review! You're right about the Python version issue. Updated the smoke-test matrix from All CI checks are passing now. Will submit a follow-up PR to fix the same issue on |
LGTM! The Python matrix update to One minor suggestion: since this workflow file will also exist on
This avoids the situation where a push to |
Each branch maintains its own CI config with branch-specific triggers to avoid cross-branch workflow interference. Signed-off-by: cxhello <caixiaohuichn@gmail.com>
|
LGTM |
|
Good point! Updated both PRs to scope trigger branches separately:
Each branch now only triggers its own CI config. |
What is the purpose of the change
Closes #305
Add a lightweight CI pipeline to catch code-breaking issues before merge. Based on the direction approved by @Sunrisea in #305, and informed by industry research on similar SDK projects (boto3, dubbo-python, openai-python, nacos-sdk-go).
Brief changelog
ci: add GitHub Actions workflow for lint and smoke test
F) onv2/directory, ignoringF401(unused imports) for now, excluding auto-generatedgrpcauto/directoryimport v2.nacos, conditionallyimport nacosonfeature/v2)masterandfeature/v2) use the same workflow file