name: CI on: pull_request: concurrency: group: ci-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: lint: runs-on: ubuntu-latest env: COMPOSE_PROJECT_NAME: ci-${{ github.run_id }}-${{ github.job }} steps: - uses: actions/checkout@v4 - name: Build run: docker compose -f docker-compose.yml -f docker-compose.ci.yml build - name: Ruff run: docker compose -f docker-compose.yml -f docker-compose.ci.yml run --rm web ruff check . typecheck: runs-on: ubuntu-latest env: COMPOSE_PROJECT_NAME: ci-${{ github.run_id }}-${{ github.job }} steps: - uses: actions/checkout@v4 - name: Build run: docker compose -f docker-compose.yml -f docker-compose.ci.yml build - name: Mypy run: docker compose -f docker-compose.yml -f docker-compose.ci.yml run --rm web mypy apps config tests: runs-on: ubuntu-latest env: COMPOSE_PROJECT_NAME: ci-${{ github.run_id }}-${{ github.job }} steps: - uses: actions/checkout@v4 - name: Build run: docker compose -f docker-compose.yml -f docker-compose.ci.yml build - name: Pytest run: docker compose -f docker-compose.yml -f docker-compose.ci.yml run --rm web pytest