💚 Use uv tool run for pytest in CI #179
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: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| env: | |
| DOCKER_BUILDKIT: "1" | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| name: Tests with Python | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 1 | |
| path: ./src/github.com/${{ github.repository }}-git | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| cache: "pip" | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip uv | |
| - name: Create a project based on our settings | |
| run: | | |
| uv run --with=django \ | |
| django-admin startproject \ | |
| --extension=ini,py,toml,yaml,yml \ | |
| --template=./src/github.com/${{ github.repository }}-git/ \ | |
| test_project | |
| - name: Lock dependencies with uv | |
| run: | | |
| cd test_project | |
| uv lock | |
| - name: Docker - Build image from starter project | |
| run: | | |
| cd test_project | |
| docker compose pull | |
| docker compose build | |
| - name: Docker - Test generated starter project | |
| run: | | |
| cd test_project | |
| docker compose run --rm utility uv tool run pytest |