ci: add GitHub Actions for checks and PyPI release

PDM-based CI on 3.14 (ruff, basedpyright, pytest); tag publish without git-cliff.
This commit is contained in:
2026-07-15 15:34:08 +08:00
parent cf7d331634
commit 69a8545141
2 changed files with 77 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.14"
- name: Install PDM
uses: pdm-project/setup-pdm@v4
with:
python-version: "3.14"
- name: Install dependencies
run: pdm sync --dev
- name: Ruff check
run: pdm run ruff check --output-format=github .
- name: Ruff format
run: pdm run ruff format --check .
- name: basedpyright
run: pdm run basedpyright .
- name: pytest
run: pdm run pytest
+39
View File
@@ -0,0 +1,39 @@
name: Release and Publish Python Package
on:
push:
tags:
- "v*"
permissions:
contents: write
id-token: write
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.14"
- name: Install build
run: python -m pip install --upgrade pip build
- name: Build package
run: python -m build --sdist --wheel --outdir dist/ .
- name: Publish package
uses: pypa/gh-action-pypi-publish@release/v1
- name: Create GitHub release
uses: softprops/action-gh-release@v2
with:
files: |
dist/*
generate_release_notes: true