name: Continuous Integration on: push: workflow_dispatch: jobs: build-and-lint: name: Lint, Check & Test runs-on: ubuntu-latest steps: - name: Check out Repository uses: https://git.konstantinfickel.de/actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v5 with: enable-cache: true version: "0.7.14" - name: Set up python uses: actions/setup-python@v5 with: python-version-file: "pyproject.toml" - name: Install the project run: uv sync --locked --all-extras --dev - name: Test with PyTest run: uv run pytest --junit-xml test-report.xml - name: Report test results uses: dorny/test-reporter@v2 if: ${{ !cancelled() }} with: name: PyTest Results path: test-report.xml reporter: java-junit - name: Check with PyRight run: uv run pyright