💚 Switch to setup-uv and run uv commands in CI #180
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: Enable caching | |
| uses: astral-sh/setup-uv@v5 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies | |
| run: | | |
| uv sync --all-extras --dev --frozen --no-editable --no-install-project | |
| - 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 run pytest |