Skip to content

Tutorial cleanup: helpers, clickable API links & fixes #63

Tutorial cleanup: helpers, clickable API links & fixes

Tutorial cleanup: helpers, clickable API links & fixes #63

Workflow file for this run

name: ci
on:
push:
tags:
- v*
pull_request:
branches: [main]
schedule:
- cron: "0 0 * * 1,3,5"
permissions:
contents: write
id-token: write
pages: write
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: pre-commit/action@v3.0.1
tests:
needs: [pre-commit]
name: "pytest with uv"
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Set up the environment
uses: ./.github/actions/setup-python-env
with:
python-version: ${{ matrix.python-version }}
- name: Tests
run: uv run pytest
test_pip_install:
needs: [pre-commit]
name: "pytest with pip install"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
- name: pip installation
run: pip install -e . && pip install pytest-cov poethepoet
- name: Run short tests
run: poe test_no_multimodal
deploy-docs:
needs: [tests, test_pip_install]
if: contains(github.ref, 'tags')
name: "Deploy documentation"
runs-on: ubuntu-latest
environment: github-pages
steps:
- uses: actions/checkout@v5
- name: Set up the environment
uses: ./.github/actions/setup-python-env
- name: Install extra dependencies
run: uv sync --dev
- name: Build documentation
run: uv run zensical build --clean
- uses: actions/upload-pages-artifact@v5
id: pages_artifact
with:
path: site
name: github-pages-${{ github.run_id }}
- uses: actions/deploy-pages@v5
id: deployment
with:
artifact_name: github-pages-${{ github.run_id }}
pypi-release:
needs: [tests, test_pip_install]
if: contains(github.ref, 'tags')
name: "PyPI release"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up the environment
uses: ./.github/actions/setup-python-env
- name: Build
run: uv build
- name: Publish
run: uv publish -t ${{ secrets.PYPI_TOKEN }}