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:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
# 只有 main 分支的变更才会触发部署
|
|
||||||
- main
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-deploy:
|
build-and-deploy:
|
||||||
runs-on: ubuntu-latest # 现在我们可以用通用的 Runner,不再需要挂载数据卷
|
runs-on: ubuntu-latest # 我们使用 GitOps 模式,不再需要特殊 Runner
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
# 获取所有历史记录,以便 peaceiris/actions-gh-pages 操作
|
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Install mdBook
|
- name: Install mdBook
|
||||||
uses: peaceiris/actions-mdbook@v1
|
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
|
- name: Deploy to 'pages' branch
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
with:
|
with:
|
||||||
# 我们用 personal_token 替代默认的 github_token
|
personal_token: ${{ secrets.DEPLOY_TOKEN }}
|
||||||
personal_token: d58a2e62b51446633a0c87df1591ba34db1ecacb
|
|
||||||
# 指定 Gitea 服务器的地址
|
|
||||||
external_repository: Dao-OS/dao-os-docs
|
external_repository: Dao-OS/dao-os-docs
|
||||||
# 要推送到哪个分支
|
|
||||||
publish_branch: pages
|
publish_branch: pages
|
||||||
# 要推送哪个目录下的内容
|
publish_dir: ./book # 推送整个 book 目录(现在包含了 en 和 zh)
|
||||||
publish_dir: ./book
|
|
||||||
# 提交代码的用户信息
|
|
||||||
user_name: "Gitea Actions"
|
user_name: "Gitea Actions"
|
||||||
user_email: "actions@gitea.example.com"
|
user_email: "actions@gitea.example.com"
|
||||||
# Gitea 需要这个设置
|
|
||||||
gitea_server: nest.doylee.cn
|
gitea_server: nest.doylee.cn
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -0,0 +1 @@
|
|||||||
|
book/
|
||||||
@@ -2,18 +2,7 @@
|
|||||||
title = "Dao OS Documentation"
|
title = "Dao OS Documentation"
|
||||||
author = "The Dao OS Community"
|
author = "The Dao OS Community"
|
||||||
description = "The official documentation for the Dao OS, your Cyber-Life Operating System."
|
description = "The official documentation for the Dao OS, your Cyber-Life Operating System."
|
||||||
multi-lingual = true
|
|
||||||
default-language = "en"
|
|
||||||
|
|
||||||
[language.en]
|
|
||||||
language = "en"
|
|
||||||
name = "English"
|
|
||||||
src = "src"
|
src = "src"
|
||||||
|
|
||||||
[language.zh]
|
|
||||||
language = "zh"
|
|
||||||
name = "简体中文"
|
|
||||||
src = "src-zh"
|
|
||||||
|
|
||||||
[output.html]
|
[output.html]
|
||||||
git-repository-url = "https://nest.doylee.cn/Dao-OS/dao-os-docs"
|
git-repository-url = "https://nest.doylee.cn/Dao-OS/dao-os-docs"
|
||||||
8
book.zh.toml
Normal file
8
book.zh.toml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
[book]
|
||||||
|
title = "大道 (Dao OS) 文档"
|
||||||
|
author = "The Dao OS Community"
|
||||||
|
description = "大道(Dao OS)官方文档,你的赛博生命操作系统。"
|
||||||
|
src = "src-zh"
|
||||||
|
|
||||||
|
[output.html]
|
||||||
|
git-repository-url = "https://nest.doylee.cn/Dao-OS/dao-os-docs"
|
||||||
Reference in New Issue
Block a user