ci(文档): 添加多语言文档构建配置
Some checks failed
Build and Deploy mdBook / build-and-deploy (push) Failing after 9s
Some checks failed
Build and Deploy mdBook / build-and-deploy (push) Failing after 9s
添加英文和中文的文档配置文件,并修改CI流程以支持多语言独立构建 将构建输出分别放入book/en和book/zh目录 保留语言自动跳转功能
This commit is contained in:
@@ -1,41 +1,48 @@
|
||||
name: Build and Deploy mdBook to Pages Branch
|
||||
name: Build and Deploy mdBook
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
# 只有 main 分支的变更才会触发部署
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
runs-on: ubuntu-latest # 现在我们可以用通用的 Runner,不再需要挂载数据卷
|
||||
runs-on: ubuntu-latest # 我们使用 GitOps 模式,不再需要特殊 Runner
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
# 获取所有历史记录,以便 peaceiris/actions-gh-pages 操作
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Install mdBook
|
||||
uses: peaceiris/actions-mdbook@v1
|
||||
|
||||
- name: Build mdBook
|
||||
run: mdbook build
|
||||
# --- ↓↓↓ 核心变更:分两次独立构建 ↓↓↓ ---
|
||||
- name: Build English & Chinese Books Separately
|
||||
run: |
|
||||
echo "Building English book..."
|
||||
# 使用 en 的配置,构建英文版,并指定输出到 book/en 目录
|
||||
mdbook build -d book/en --config book.en.toml .
|
||||
|
||||
echo "Building Chinese book..."
|
||||
# 使用 zh 的配置,构建中文版,并指定输出到 book/zh 目录
|
||||
mdbook build -d book/zh --config book.zh.toml .
|
||||
|
||||
- name: Create Language Redirect Index
|
||||
run: |
|
||||
# 这个步骤依然需要,用于创建根目录的语言跳转页
|
||||
echo '<!DOCTYPE html><html><head><meta charset="utf-8"><title>Redirecting...</title><script>var lang = navigator.language || navigator.userLanguage; if (lang.toLowerCase().startsWith("zh")) { window.location.replace("./zh/"); } else { window.location.replace("./en/"); }</script><meta http-equiv="refresh" content="0; url=./en/"></head><body><p>Redirecting to your preferred language... If you are not redirected, please select a language:</p><p><a href="./en/">English</a> | <a href="./zh/">简体中文</a></p></body></html>' > book/index.html
|
||||
echo "Created language redirect page."
|
||||
|
||||
# --- ↓↓↓ 部署步骤保持不变 ↓↓↓ ---
|
||||
- name: Deploy to 'pages' branch
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
# 我们用 personal_token 替代默认的 github_token
|
||||
personal_token: d58a2e62b51446633a0c87df1591ba34db1ecacb
|
||||
# 指定 Gitea 服务器的地址
|
||||
personal_token: ${{ secrets.DEPLOY_TOKEN }}
|
||||
external_repository: Dao-OS/dao-os-docs
|
||||
# 要推送到哪个分支
|
||||
publish_branch: pages
|
||||
# 要推送哪个目录下的内容
|
||||
publish_dir: ./book
|
||||
# 提交代码的用户信息
|
||||
publish_dir: ./book # 推送整个 book 目录(现在包含了 en 和 zh)
|
||||
user_name: "Gitea Actions"
|
||||
user_email: "actions@gitea.example.com"
|
||||
# Gitea 需要这个设置
|
||||
gitea_server: nest.doylee.cn
|
||||
|
||||
Reference in New Issue
Block a user