Skip to content

build: migrate project tooling to uv, ruff and hatch (#365) #142

build: migrate project tooling to uv, ruff and hatch (#365)

build: migrate project tooling to uv, ruff and hatch (#365) #142

Workflow file for this run

name: documentation
on:
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: "pages"
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Pages
id: pages
uses: actions/configure-pages@v3
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Set up Python
run: uv python install 3.11
- name: Install dependencies
run: |
uv sync --group doc
# temporary fix for sphinx-polyversion
uv pip install --force-reinstall git+https://github.com/ziw-liu/sphinx-polyversion.git@iohub-staging
- name: Set environment
run: |
REPO_OWNER="${GITHUB_REPOSITORY%%/*}"
REPO_NAME="${GITHUB_REPOSITORY#*/}"
echo "GITHUB_PAGES_URL=https://$REPO_OWNER.github.io/$REPO_NAME" >> $GITHUB_ENV
- name: Build the docs
run: |
echo $GITHUB_PAGES_URL
uv run make build -C docs
touch docs/build/.nojekyll
- name: Upload build artifacts
uses: actions/upload-pages-artifact@v3
with:
path: "./docs/build"
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
permissions:
pages: write
id-token: write
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4