Skip to content

gha: switch to setup-uv #272

gha: switch to setup-uv

gha: switch to setup-uv #272

Workflow file for this run

name: lint
on:
push:
branches:
- "master"
- "release-*"
pull_request:
branches:
- "master"
- "release-*"
workflow_dispatch:
schedule:
- cron: "20 4 * * 2" # once a week
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
python: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
include:
- { os: ubuntu-latest, python: "pypy3.9" }
- { os: ubuntu-latest, python: "pypy3.10" }
steps:
- uses: actions/checkout@v6
- name: Set up uv (python ${{matrix.python}})
uses: astral-sh/setup-uv@v7
with:
python-version: ${{ matrix.python }}
- name: set PY_CACHE_KEY
run: echo "PY_CACHE_KEY=$(python -c 'import hashlib, sys;print(hashlib.sha256(sys.version.encode()+sys.executable.encode()).hexdigest())')" >> $GITHUB_ENV
- name: Cache .nox
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/.nox/lint
key: "nox-lint|${{ matrix.os }}|${{ env.PY_CACHE_KEY }}|${{ hashFiles('noxfile.py', 'setup.py', 'pyproject.toml') }}"
- name: Install nox
run: |
uv pip install --system nox
nox --version
- name: Lint
run: nox -v -s lint
env:
RUFF_OUTPUT_FORMAT: "github"