发布切换容器前等待生产上游同步完成 #284

Merged
WuYongJie merged 1 commits from fix/WuYongJie-deploy-sync-guard-oct07 into main 2026-10-07 15:00:49 +08:00
Owner

修改

两种生产发布入口在替换应用容器前获取现有 /run/caiwu-upstream-sync.lock。等待最多 1800 秒,超时明确退出,保留现有容器。持锁贯穿切换与验收,避免生产镜像同步被部署终止并遗留 running 状态。

文件

  • deploy/activate-release.sh
  • deploy/activate-incremental-release.sh
  • tests/Unit/Deployment/DeploymentSyncLockTest.php

验证

  • 在隔离 Linux 容器中实际占用 flock 验证:锁超时不进入替换步骤;锁释放后才继续。
  • 与原部署调度测试一起通过:7 tests / 122 assertions。
  • 两份脚本 sh -n、git diff --check 均通过。

影响

无金额、权限、数据库迁移或生产连接配置改动。发布可能等待正在执行的生产同步完成。此前被另一次发布终止的本次发货窗口检查已如实标记 failed,保留镜像和历史待补状态;不宣称数据已校准完成。

## 修改 两种生产发布入口在替换应用容器前获取现有 /run/caiwu-upstream-sync.lock。等待最多 1800 秒,超时明确退出,保留现有容器。持锁贯穿切换与验收,避免生产镜像同步被部署终止并遗留 running 状态。 ## 文件 - deploy/activate-release.sh - deploy/activate-incremental-release.sh - tests/Unit/Deployment/DeploymentSyncLockTest.php ## 验证 - 在隔离 Linux 容器中实际占用 flock 验证:锁超时不进入替换步骤;锁释放后才继续。 - 与原部署调度测试一起通过:7 tests / 122 assertions。 - 两份脚本 sh -n、git diff --check 均通过。 ## 影响 无金额、权限、数据库迁移或生产连接配置改动。发布可能等待正在执行的生产同步完成。此前被另一次发布终止的本次发货窗口检查已如实标记 failed,保留镜像和历史待补状态;不宣称数据已校准完成。
WuYongJie added 1 commit 2026-10-07 15:00:39 +08:00
WuYongJie merged commit db2ee47fd8 into main 2026-10-07 15:00:49 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WuYongJie/CaiWuXiTong#284
No description provided.