Commit Graph
3 Commits
Author SHA1 Message Date
wait4xandGLM-5.3 bb29c8abaf fix(deploy): 构建抓取通道可配+构建日志落盘——ESA 522 事故双根治
- build.sh:BLOG_GIT_URL 环境变量(默认公网,同机构建可指内网
  http://127.0.0.1:13020);每次构建 remote set-url 后 fetch——
  2026-10-26 事故:ESA 边缘对 git.wait4x.online 522 时公网 fetch
  set -e 静默死,staging 冻结 150s+ 无痕
- webhook_receiver.py:构建输出落盘 ~/docker_apps/blog/build.log
  (capture_output 丢弃=黑洞,本次事故"构建为何没跑"零证据);
  与运行副本双同步纪律维持
- 宿主 unit 补 BLOG_GIT_URL 内网通道(配置在 unit 不在仓——主机
  特定值不污染仓库默认)

验证: 手动构建实测 stamp=19b2390+robots.txt 352B 上线;18743 测试
      床恢复 200;smoke 对 staging 软门容忍符合 T1 转硬门前设计

Spec: none (发布链通道与可观测性修复,事故驱动)

Co-authored-by: GLM-5.3
2026-11-01 09:58:47 +08:00
wait4xandGLM-5.3 810cf44d3d fix(deploy): receiver 改调构建仓自己的 build.sh——发布链执行源归一
- 架构债(20:31 事故根因层):receiver 此前执行工作树
  infra/deploy/build.sh,车道在途半成品状态可断生产链——改为
  build-repo/infra/deploy/build.sh(origin/main 硬跟版本),
  构建仓缺失时首克引导(匿名 clone)
- 双副本纪律入档头注:仓内源与 ~/docker_apps/blog/ 运行副本改一
  须同步二并 restart(systemd 跑的是运行副本,漂移即事故)
- 深意:构建脚本演化自此走 git 评审流,main=可部署铁律闭环

验证: 签名 POST 端到端实测(HMAC 构造无 git 污染):202 queued →
      90s 后 stamp=1fdd0cc;healthz 200;单元 active

Spec: none (发布链架构修正:单执行源切换+端到端实测)

Co-authored-by: GLM-5.3
2026-10-25 21:12:48 +08:00
wait4xandGLM-5.3 938558ad4c feat(launch): 热力图与 webhook 发布闭环(T2/T3)
- T2 (op-artalk 车道):gitea heatmap 构建期拉取+fallback+空态三保险,
  53×7 灰阶格复用 tokens(亮暗自动),日界锚定 Asia/Shanghai,零 JS,
  zh/en 首页挂载;fallback 经死端点实测不破构建
- T3:webhook_receiver.py(HMAC 强制+main-only+构建锁)以 systemd
  --user 常驻 13021;gitea hook 注册(events=push, branch=main)
- 三个深坑:gitea 容器回宿主须走桥网关 IP 而非 127.0.0.1;gitea 28
  egress 拦私网须 ALLOWED_HOST_LIST(ALLOWLIST 是废弃名);systemd
  用户服务缺用户 PATH 致 build 静默失败(stamp 不更新即症状)

验证: 测试投递 202→构建→staging 戳更新(09:48:37 实测);
      dist 热力图 376 格真数据(9 次贡献)zh/en 双页

Spec: 2026-10-25_add-blog-launch
Co-authored-by: GLM-5.3
2026-10-25 09:49:19 +08:00