45 lines
1.1 KiB
YAML
45 lines
1.1 KiB
YAML
name: Deploy Sphinx Docs
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- "docs/**"
|
|
- "pyproject.toml"
|
|
paths-ignore:
|
|
- "**.sh"
|
|
|
|
jobs:
|
|
build-and-deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout version
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup uv
|
|
uses: astral-sh/setup-uv@v5
|
|
|
|
- name: Setup Python
|
|
run: uv python install 3.12
|
|
|
|
- name: Install Dependencies
|
|
run: |
|
|
uv sync --all-groups
|
|
|
|
- name: Build Sphinx Documentation
|
|
run: |
|
|
cd docs
|
|
uv run ./build_docs.sh
|
|
uv run ./build_docs.sh zh_CN
|
|
mkdir -p ../public
|
|
mkdir -p ../public/zh_CN
|
|
cp -r build/html/* ../public/
|
|
cp -r build/html_zh_CN/* ../public/zh_CN/
|
|
|
|
- name: Deploy to Cloudflare Pages
|
|
uses: cloudflare/wrangler-action@v3
|
|
with:
|
|
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
command: pages deploy public --project-name=primitive-type-pydocs
|