Skip to content

test: migrate to uv #171

test: migrate to uv

test: migrate to uv #171

Workflow file for this run

name: CI
on:
push:
branches: [main]
tags:
- "*.*.*"
pull_request:
jobs:
docs:
strategy:
matrix:
python-version: ["3.8", "3.13"]
theme: ["alabaster", "awesome", "furo", "pydata", "rtd"]
name: Build docs with ${{ matrix.theme }} theme on Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install nox
run: |
uv tool install nox
- name: Build docs
run: |
nox -p ${{ matrix.python-version }} -s docs -- -t ${{ matrix.theme }}
env:
DOCSEARCH_APP_ID: test
DOCSEARCH_API_KEY: test
DOCSEARCH_INDEX_NAME: test
test:
strategy:
matrix:
python-version: ["3.8", "3.13"]
name: Test with Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install nox
run: |
uv tool install nox
- name: Run workflow
run: |
nox -p ${{ matrix.python-version }}
env:
DOCSEARCH_APP_ID: test
DOCSEARCH_API_KEY: test
DOCSEARCH_INDEX_NAME: test
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
- uses: actions/setup-python@v5
with:
python-version: 3.13
- name: Install nox
run: |
uv tool install nox
- name: Lint Python code
run: nox -s lint
- name: Check links
run: nox -s check_links
release:
name: Publish to PyPI
needs: [test, lint, docs]
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
- uses: actions/setup-python@v5
with:
python-version: 3.13
- name: Install nox
run: |
uv tool install nox
- name: Publish package
env:
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_TOKEN }}
run: nox -s publish