← 返回文章列表
029 — 运维 · #CICD #Actions · 2026-08-16 · 2 MIN READ
用 GitHub Actions 实现 git push 即发布
这个博客的发布流程只有一个动作:git push。剩下的构建、部署、知识库同步全部由 GitHub Actions 完成。
流水线设计
工作流分三步:构建静态站点 → rsync 到服务器 → 触发知识库增量更新。第三步通过 SSH 在服务器上执行一个小脚本,检测变更的 Markdown 文件并更新向量库。
workflow 配置
yaml
name: deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci && npm run build
- run: rsync -az dist/ server:/var/www/blog
- run: ssh server "bash /opt/sync_kb.sh"
注意事项
- 服务器 IP 和 SSH 私钥放 GitHub Secrets,绝不进仓库
- rsync 加
--delete前先空跑一次确认目录写对了 - 知识库同步失败不应阻塞部署,脚本里做好错误隔离
Comments