fix(deploy): 通过更新脚本恢复受控仓库镜像定义
Test deployment public URL (Linux) / test-linux (push) Canceled after 0s

This commit is contained in:
easyai02
2026-10-05 11:35:47 +08:00
parent 125b12a1d8
commit e3d760c5ab
5 changed files with 146 additions and 5 deletions
+8 -1
View File
@@ -23,6 +23,8 @@ if [[ "${1:-}" =~ ^(-h|--help)$ ]]; then
echo " 通过脚本固定核心服务和转换 Worker 的镜像版本,不提升 latest。"
echo " UPDATE_ADOPT_LEGACY_CONFIG=1"
echo " 备份旧部署配置并将本地差异迁移为独立覆盖文件。"
echo " UPDATE_RESTORE_REPOSITORY_IMAGES='easyai-web'"
echo " 迁移旧配置时恢复指定核心服务的仓库镜像定义;必须属于 UPDATE_SERVICES。"
echo ""
echo "仓库更新后会自动执行 scripts/update-env.d 中的幂等环境配置迁移。"
exit 0
@@ -97,6 +99,11 @@ resolve_update_mode() {
resolve_update_mode
if [ -n "${UPDATE_RESTORE_REPOSITORY_IMAGES:-}" ] && { [ "$SKIP_REPO_UPDATE" = true ] || [ "${UPDATE_ADOPT_LEGACY_CONFIG:-0}" != "1" ]; }; then
echo "❌ 恢复仓库镜像必须使用仓库更新模式和 UPDATE_ADOPT_LEGACY_CONFIG=1;尚未修改配置或容器" >&2
exit 1
fi
if [ -n "${UPDATE_RELEASE_VERSION:-}" ] && ! [[ "$UPDATE_RELEASE_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]{8}(\.[0-9]+)?$ ]]; then
echo "❌ UPDATE_RELEASE_VERSION 格式不正确;尚未修改配置或容器" >&2
exit 1
@@ -139,7 +146,7 @@ if [ "$SKIP_REPO_UPDATE" = false ]; then
after_revision="$(git rev-parse HEAD)"
if [ "$before_revision" != "$after_revision" ] && [ "${EASYAI_UPDATE_REEXECUTED:-0}" != "1" ]; then
echo "🔄 检测到部署仓库已更新,切换到新版更新脚本继续执行..."
exec env EASYAI_UPDATE_REEXECUTED=1 UPDATE_SKIP_REPO_UPDATE=true "$SCRIPT_DIR/update.sh"
exec env EASYAI_UPDATE_REEXECUTED=1 UPDATE_SKIP_REPO_UPDATE=true UPDATE_RESTORE_REPOSITORY_IMAGES= "$SCRIPT_DIR/update.sh"
fi
echo ""