From 1c4d392842491a7dbd3d0fefc41d27babd3866d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E5=A4=952077?= <274166795@qq.com> Date: Sun, 10 Aug 2025 13:25:56 +0800 Subject: [PATCH] Update build-daily-book.yml --- .github/workflows/build-daily-book.yml | 106 +------------------------ 1 file changed, 1 insertion(+), 105 deletions(-) diff --git a/.github/workflows/build-daily-book.yml b/.github/workflows/build-daily-book.yml index f3eca3f..1ea1b4e 100644 --- a/.github/workflows/build-daily-book.yml +++ b/.github/workflows/build-daily-book.yml @@ -11,9 +11,6 @@ on: jobs: build-book: runs-on: ubuntu-latest - - env: - IMAGE_PROXY_URL: ${{ vars.IMAGE_PROXY_URL }} # 从仓库变量中读取 # 需要写入权限来提交生成的文件和归档的日刊 permissions: @@ -25,12 +22,6 @@ jobs: with: # 明确指定要检出的分支 ref: 'book' # <-- 请将 'book' 替换为你的目标分支名 - - - name: Install mdBook - run: | - mkdir -p $HOME/.cargo/bin - export PATH=$HOME/.cargo/bin:$PATH - curl -sL https://github.com/rust-lang/mdBook/releases/download/v0.4.51/mdbook-v0.4.51-x86_64-unknown-linux-gnu.tar.gz | tar -xz -C $HOME/.cargo/bin - name: Archive old notes id: archive @@ -62,101 +53,6 @@ jobs: done echo "文件归档检查完成。" - - name: Prepare source files for mdBook - run: | - echo "准备 mdBook 构建源文件..." - # 确保 src 目录存在,并清空旧的 daily 内容 - mkdir -p src - rm -rf src/daily/ - # 递归复制归档后的 `daily` 目录到 `src` - cp -r daily/ src/ - echo "源文件已复制到 src/daily/。" - - - name: Replace image URLs in src directory - run: | - echo "开始替换 src/daily/ 目录及其子目录下所有 Markdown 文件的内容..." - echo "使用的代理前缀: ${{ env.IMAGE_PROXY_URL }}" - # 在 src/daily 目录中执行替换,而不是在原始的 daily 目录 - find src/daily -type f -name "*.md" -exec sed -i \ - -e 's|upload.chinaz.com|pic.chinaz.com|g' \ - -e 's|https://pic.chinaz.com|${{ env.IMAGE_PROXY_URL }}https://pic.chinaz.com|g' {} + - echo "URL 替换完成。" - - - name: Generate SUMMARY.md from final file structure - id: generate_summary - run: | - # 注意:此时 src/daily 目录已由上一步准备好并处理完毕 - - SUMMARY_FILE="src/SUMMARY.md" - - # 查找逻辑不变,仍然从原始的 daily 目录中查找最新文件 - LATEST_DAILY_FILE=$(find daily -type f -name "*.md" | sort -r | head -n 1) - - if [ -z "$LATEST_DAILY_FILE" ]; then - echo "错误:在 'daily' 目录中没有找到任何 .md 文件。" - exit 1 - fi - - # 最新的文件还在 'daily' 根目录下,复制它作为 'Today' 页面到 src 目录 - LATEST_FILENAME=$(basename "$LATEST_DAILY_FILE") - cp "$LATEST_DAILY_FILE" "src/$LATEST_FILENAME" - - # 开始写入 SUMMARY.md - echo "# Summary" > "$SUMMARY_FILE" - echo "" >> "$SUMMARY_FILE" - echo "[Today]($LATEST_FILENAME)" >> "$SUMMARY_FILE" - echo "" >> "$SUMMARY_FILE" - - # --- 生成按月分组的列表 --- - current_month="" - # 查找逻辑不变,目录结构基于原始的 daily 目录 - for file in $(find daily -type f -name "*.md" | sort -r); do - filename_only=$(basename "$file" .md) - month=$(echo "$filename_only" | cut -d'-' -f1,2) - - if [ "$month" != "$current_month" ]; then - echo "# $month" >> "$SUMMARY_FILE" - current_month=$month - fi - - link_title=$(echo "$filename_only" | cut -d'-' -f2,3) - relative_path=${file#daily/} - - # 生成的链接将是正确的 'daily/...' 路径 - echo "- [${link_title}-日刊](daily/$relative_path)" >> "$SUMMARY_FILE" - done - - echo "SUMMARY.md 已成功生成,内容如下:" - cat "$SUMMARY_FILE" - - - name: Build the book - run: | - mdbook build - - - name: Organize output files - run: | - echo "正在组织输出文件..." - rm -rf today/book/ - mkdir -p today - cp -rf book/. today/book/ - rm -rf book - echo "输出文件已移动到 today/book。" - - - name: Add Clarity tracking to book.js - run: | - TOC_FILE="today/book/book.js" - FORWARD_CODE='${{ vars.FORWARD_CODE }}' - CLARITY_CODE='${{ vars.CLARITY_CODE }}' - - if [ -f "$TOC_FILE" ]; then - echo "Appending Forward and Clarity tracking code to $TOC_FILE" - printf "\n%s\n" "$FORWARD_CODE" >> "$TOC_FILE" - printf "\n%s\n" "$CLARITY_CODE" >> "$TOC_FILE" - echo "Tracking codes appended." - else - echo "Warning: $TOC_FILE not found. Skipping tracking code injection." - fi - - name: Trigger RSS Data Write (2 attempts, 3 retries each) run: | # 检查 `WRITE_RSS_URL` 变量是否已设置 @@ -214,7 +110,7 @@ jobs: git config --local user.email "action@github.com" git config --local user.name "GitHub Action" - git add src/SUMMARY.md today/ daily/ + git add today/ daily/ if [ -f "rss.xml" ]; then git add rss.xml else