Skip to content

Commit 7dd2101

Browse files
committed
Add preview PDF
1 parent ed4a5c3 commit 7dd2101

2 files changed

Lines changed: 76 additions & 0 deletions

File tree

.github/workflows/preview-pdf.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Update Preview PDF
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: write
11+
12+
concurrency:
13+
group: preview-pdf
14+
cancel-in-progress: true
15+
16+
jobs:
17+
update-preview-pdf:
18+
name: Update preview release
19+
runs-on: ubuntu-latest
20+
env:
21+
GH_TOKEN: ${{ github.token }}
22+
steps:
23+
- uses: actions/checkout@v6
24+
25+
- name: Install Chromium and CJK fonts
26+
run: |
27+
sudo apt-get update
28+
sudo apt-get install -y chromium-browser fonts-noto-cjk fonts-noto-cjk-extra
29+
30+
- name: Install mdpress (latest)
31+
run: |
32+
LATEST_TAG=$(curl -fsSL https://api.github.com/repos/yeasy/mdpress/releases/latest | jq -r .tag_name)
33+
VERSION="${LATEST_TAG#v}"
34+
echo "Installing mdpress $VERSION"
35+
curl -fsSL "https://github.com/yeasy/mdPress/releases/download/$LATEST_TAG/mdpress_${VERSION}_linux_amd64.tar.gz" -o /tmp/mdpress.tar.gz
36+
tar xzf /tmp/mdpress.tar.gz -C /tmp mdpress
37+
sudo mv /tmp/mdpress /usr/local/bin/
38+
mdpress --version
39+
40+
- name: Build latest preview PDF
41+
run: |
42+
mkdir -p dist
43+
mdpress build --format pdf --output dist/latest.pdf
44+
45+
- name: Write release notes
46+
run: |
47+
cat > dist/release-notes.md <<EOF
48+
Auto-updated preview PDF from \`${GITHUB_SHA::7}\`.
49+
50+
- Branch: \`${GITHUB_REF_NAME}\`
51+
- Commit: https://github.com/${GITHUB_REPOSITORY}/commit/${GITHUB_SHA}
52+
- Run: https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}
53+
EOF
54+
55+
- name: Create preview release
56+
run: |
57+
gh release view preview-pdf >/dev/null 2>&1 || \
58+
gh release create preview-pdf \
59+
--title "Latest Preview PDF" \
60+
--notes-file dist/release-notes.md \
61+
--prerelease \
62+
--latest=false \
63+
--target "$GITHUB_SHA"
64+
65+
- name: Update preview release metadata
66+
run: |
67+
gh release edit preview-pdf \
68+
--title "Latest Preview PDF" \
69+
--notes-file dist/release-notes.md \
70+
--prerelease \
71+
--target "$GITHUB_SHA"
72+
73+
- name: Upload preview PDF
74+
run: gh release upload preview-pdf dist/latest.pdf --clobber

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ graph LR
163163

164164
本书提供 PDF 版本供离线阅读,可前往 [GitHub Releases](https://github.com/yeasy/context_engineering_guide/releases/latest) 页面下载最新版本。
165165

166+
如需获取默认分支自动更新的预览版,可直接下载 [latest preview PDF](https://github.com/yeasy/context_engineering_guide/releases/download/preview-pdf/latest.pdf)。该文件会随主线更新覆盖,不代表正式发布版本。
167+
166168
### 本地阅读
167169

168170
先安装 [mdPress](https://github.com/yeasy/mdpress)

0 commit comments

Comments
 (0)