Merge pull request #220 from Isskar/add-obeafr-and-kanbiosfr #242
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 Pipeline | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| branches: [ main ] | |
| jobs: | |
| lint-and-format: | |
| name: Ruff lint and format | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: [3.12] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| version: "0.7.8" | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Lint with Ruff | |
| run: | | |
| uv run ruff check . | |
| - name: Check formatting with Ruff | |
| run: | | |
| uv run ruff format --check . | |
| typecheck: | |
| name: Type check with astral.sh/ty | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: [3.12] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| version: "0.7.8" | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install the project | |
| run: uv sync --locked --all-extras --dev | |
| - name: Type check with ty | |
| run: | | |
| uv run ty check . | |
| unit-tests: | |
| name: Run unit tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: [3.12] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| version: "0.7.8" | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install the project with test dependencies | |
| run: uv sync --locked --extra test | |
| - name: Run unit tests | |
| run: | | |
| uv run pytest tests/ -v --tb=short --disable-warnings | |
| env: | |
| ENVIRONMENT: ci | |
| OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} |