name: CI on: pull_request: concurrency: group: ci-pr-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: ci: runs-on: ubuntu-latest env: CI_IMAGE: nohype-ci:${{ github.run_id }} steps: - uses: actions/checkout@v4 - name: Build run: docker build -t "$CI_IMAGE" . - name: Ruff run: docker run --rm "$CI_IMAGE" ruff check . - name: Mypy run: docker run --rm "$CI_IMAGE" mypy apps config - name: Pytest run: docker run --rm -e DATABASE_URL=sqlite:////tmp/ci.sqlite3 "$CI_IMAGE" pytest - name: Remove CI image if: always() run: docker image rm -f "$CI_IMAGE" || true