From 0e56e688538ebf5ed37611fc58e4b604fdb7cd77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E4=B8=9C=E4=BA=91?= Date: Tue, 10 Jun 2025 03:40:01 +0800 Subject: [PATCH] =?UTF-8?q?ci(=E6=96=87=E6=A1=A3=E9=83=A8=E7=BD=B2):=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=96=87=E6=A1=A3=E6=9E=84=E5=BB=BA=E5=92=8C?= =?UTF-8?q?=E9=83=A8=E7=BD=B2=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 使用通用的 ubuntu-latest runner 替代专用 runner 改用 peaceiris/actions-mdbook 和 actions-gh-pages 简化流程 移除手动缓存和安装 mdbook 的步骤 将部署方式改为推送到 pages 分支 --- .gitea/workflows/build_and_deploy_docs.yml | 58 ++++++++++------------ 1 file changed, 25 insertions(+), 33 deletions(-) diff --git a/.gitea/workflows/build_and_deploy_docs.yml b/.gitea/workflows/build_and_deploy_docs.yml index 93640ca..d77c1e8 100644 --- a/.gitea/workflows/build_and_deploy_docs.yml +++ b/.gitea/workflows/build_and_deploy_docs.yml @@ -1,49 +1,41 @@ -name: Build and Deploy mdBook +name: Build and Deploy mdBook to Pages Branch on: push: branches: + # 只有 main 分支的变更才会触发部署 - main jobs: build-and-deploy: - runs-on: docs-deployer + runs-on: ubuntu-latest # 现在我们可以用通用的 Runner,不再需要挂载数据卷 steps: - name: Checkout repository uses: actions/checkout@v2 - - - name: Cache mdBook - id: cache-mdbook - uses: actions/cache@v3 with: - path: ~/.local/bin/mdbook - key: ${{ runner.os }}-mdbook-0.4.36 + # 获取所有历史记录,以便 peaceiris/actions-gh-pages 操作 + fetch-depth: 0 - - name: Install mdBook if not cached - # 只有在缓存未命中时才执行 - if: steps.cache-mdbook.outputs.cache-hit != 'true' - run: | - # --- ↓↓↓ 新增的修复步骤 ↓↓↓ --- - # 在解压前,确保目标目录存在。-p 参数会创建所有必要的父目录。 - echo "Creating directory ~/.local/bin..." - mkdir -p ~/.local/bin - # --- ↑↑↑ 修复步骤结束 ↑↑↑ --- + - name: Install mdBook + uses: peaceiris/actions-mdbook@v1 - echo "Downloading and extracting mdBook..." - curl -sL https://github.com/rust-lang/mdBook/releases/download/v0.4.36/mdbook-v0.4.36-x86_64-unknown-linux-gnu.tar.gz | tar xvz -C ~/.local/bin - chmod +x ~/.local/bin/mdbook + - name: Build mdBook + run: mdbook build - - name: Build mdBook docs - # 使用缓存或刚刚安装的 mdbook 进行构建 - run: ~/.local/bin/mdbook build - - - name: Deploy to Gitea Pages Directory - run: | - TARGET_DIR="/mnt/gitea-pages/dao-os/dao-os-docs" - SOURCE_DIR="./book" - echo "🚀 Deploying to host via volume mount using 'cp'..." - mkdir -p "$TARGET_DIR" - find "$TARGET_DIR" -mindepth 1 -delete - cp -r "$SOURCE_DIR"/. "$TARGET_DIR/" - echo "✅ Deployment successful!" + - name: Deploy to 'pages' branch + uses: peaceiris/actions-gh-pages@v3 + with: + # 我们用 personal_token 替代默认的 github_token + personal_token: d58a2e62b51446633a0c87df1591ba34db1ecacb + # 指定 Gitea 服务器的地址 + external_repository: Dao-OS/dao-os-docs + # 要推送到哪个分支 + publish_branch: pages + # 要推送哪个目录下的内容 + publish_dir: ./book + # 提交代码的用户信息 + user_name: "Gitea Actions" + user_email: "actions@gitea.example.com" + # Gitea 需要这个设置 + gitea_server: nest.doylee.cn