chore: remove generated tasks from repo #111
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| # ────────────────────────────────────────────── | |
| # Lint & Format (ruff + mypy) | |
| # ────────────────────────────────────────────── | |
| lint: | |
| name: Lint & Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install linting tools | |
| run: pip install ruff mypy | |
| - name: Check formatting | |
| run: ruff format --check src/ tests/ | |
| - name: Run ruff linter | |
| run: ruff check src/ tests/ | |
| - name: Run mypy | |
| run: mypy src/ --ignore-missing-imports | |
| continue-on-error: true | |
| # ────────────────────────────────────────────── | |
| # Tests (pytest) | |
| # ────────────────────────────────────────────── | |
| test: | |
| name: Tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install package with dev dependencies | |
| run: pip install -e ".[dev]" | |
| - name: Run tests | |
| run: pytest tests/ -v --tb=short | |
| # ────────────────────────────────────────────── | |
| # Build (python -m build) | |
| # ────────────────────────────────────────────── | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install build | |
| run: pip install build | |
| - name: Build package | |
| run: python -m build | |
| - name: Upload dist | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: dist | |
| path: dist/ | |
| retention-days: 7 | |
| # ────────────────────────────────────────────── | |
| # Security audit (pip-audit) | |
| # ────────────────────────────────────────────── | |
| audit: | |
| name: Security audit | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install pip-audit | |
| run: pip install pip-audit | |
| - name: Run audit | |
| run: pip-audit | |
| continue-on-error: true |