name: CI on: pull_request: push: branches: - main workflow_dispatch: jobs: build: name: Build runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 - uses: hynek/build-and-inspect-python-package@v2 main: strategy: fail-fast: false matrix: include: - name: "pytest (3.13)" python: "3.13" tox: "3.13" - name: "pytest (3.14)" python: "3.14" tox: "3.14" coverage: true - name: "pyright" python: "3.14" tox: "pyright" - name: "ruff check" python: "3.14" tox: "ruff-check" - name: "ruff format" python: "3.14" tox: "ruff-format" name: ${{ matrix.name }} runs-on: ubuntu-24.04 container: ghcr.io/mopidy/ci:latest steps: - uses: actions/checkout@v6 - name: Fix home dir permissions to enable pip caching run: chown -R root /github/home - uses: actions/setup-python@v6 with: python-version: ${{ matrix.python }} cache: pip allow-prereleases: true - run: python -m pip install tox - run: python -m pip install mopidy - run: python -m tox -e ${{ matrix.tox }} if: ${{ ! matrix.coverage }} - run: python -m tox -e ${{ matrix.tox }} -- --cov-report=xml if: ${{ matrix.coverage }} - uses: codecov/codecov-action@v6 if: ${{ matrix.coverage }} with: token: ${{ secrets.CODECOV_TOKEN }}