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
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -0,0 +1 @@
|
||||
book/
|
||||
@@ -2,18 +2,7 @@
|
||||
title = "Dao OS Documentation"
|
||||
author = "The Dao OS Community"
|
||||
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"
|
||||
|
||||
[language.zh]
|
||||
language = "zh"
|
||||
name = "简体中文"
|
||||
src = "src-zh"
|
||||
|
||||
[output.html]
|
||||
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