huhan3000/.gitea/workflows/docs.yml

63 lines
1.5 KiB
YAML

name: 构建和部署文档
# Build and Deploy Documentation
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
build-docs:
runs-on: ubuntu-latest
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 设置Python环境
uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: 安装依赖
run: |
python -m pip install --upgrade pip
pip install -r documentation/sphinx-docs/requirements.txt
- name: 构建Sphinx文档
run: |
cd documentation/sphinx-docs
make html
- name: 部署到GitHub Pages
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./documentation/sphinx-docs/_build/html
deploy-local:
runs-on: self-hosted
if: github.ref == 'refs/heads/main'
needs: build-docs
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 构建文档
run: |
./build_docs.sh
- name: 启动本地服务器
run: |
# 停止旧的服务器
pkill -f "python.*http.server.*8000" || true
# 启动新的服务器
nohup python3 -m http.server 8000 \
--directory documentation/sphinx-docs/_build/html \
> server.log 2>&1 &
echo "文档服务器已启动: http://localhost:8000"