name: Build and Deploy mdBook on: push: branches: - main jobs: build-and-deploy: # 依然使用标签,确保任务只被这个配置了挂载的 Runner 执行 runs-on: docs-deployer steps: - name: Checkout repository uses: actions/checkout@v3 - name: Install mdBook uses: peaceiris/actions-mdbook@v1 with: mdbook-version: "latest" - name: Build mdBook run: mdbook build # 部署步骤变得无比简单! - name: Deploy to Gitea Pages Directory run: | # 这是我们挂载到容器内的路径,后面拼接上你的项目路径 TARGET_DIR="/mnt/gitea-pages/dao-os/dao-os-docs" echo "🚀 Deploying to host via volume mount..." # 确保目标目录存在 mkdir -p "$TARGET_DIR" # 使用 rsync 进行高效、安全的本地文件同步 # 它比 cp -r 更好,因为它只会同步有变化的文件,并且有 --delete 选项 rsync -a --delete ./book/ "$TARGET_DIR/" echo "✅ Deployment successful!"