From 35834b121e5c8be49f44cbe6c5bb9233c5de17d1 Mon Sep 17 00:00:00 2001 From: deploy-bot Date: Tue, 2 Jun 2026 22:08:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(deploy):=20=E5=AE=9E=E7=8E=B0=20enable=5Fn?= =?UTF-8?q?ginx=5Fsite=20=E6=AD=A5=E9=AA=A4=205=EF=BC=88=E9=AA=8C=E8=AF=81?= =?UTF-8?q?=EF=BC=89+=20=E9=9B=86=E6=88=90=E5=88=B0=20deploy=5Fnginx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy.py | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/deploy.py b/deploy.py index 7b30101..3440b08 100644 --- a/deploy.py +++ b/deploy.py @@ -335,7 +335,25 @@ def enable_nginx_site(remote_conf: str, domain: str) -> bool: log_warn("提示: default 文件可能仍存在,nginx 可能有端口冲突;步骤 5 验证会确认") else: log_info("清默认步骤完成") - return True # Task 4 替换为完整 5 步(含验证) + + # ===== 步骤 5: 验证结果 ===== + log_info("验证步骤: 检查 symlink 和 default 状态...") + verify_cmd = ( + f'readlink {target} && ' + f'(test ! -e /etc/nginx/sites-enabled/default && echo "default:OK" || echo "default:STILL_EXISTS") && ' + f'ls -la /etc/nginx/sites-enabled/' + ) + ok, stdout, err = ssh_command(verify_cmd, timeout=30) + if not ok: + log_error(f"验证步骤失败: {err}") + log_error(f"实际输出: {stdout}") + return False + log_info("验证结果:") + for line in stdout.split('\n'): + if line.strip(): + log_info(f" {line}") + log_info("启用站点配置完成") + return True # ============================================================================ @@ -361,12 +379,8 @@ def deploy_nginx(): return False log_info("启用站点配置...") - ok, _, err = ssh_command( - f"ln -snf {remote_conf} /etc/nginx/sites-enabled/{DOMAIN}.conf " - f"&& rm -f /etc/nginx/sites-enabled/default" - ) - if not ok: - log_error(f"启用站点失败: {err}") + if not enable_nginx_site(remote_conf, DOMAIN): + log_error("启用站点失败(详见 enable_nginx_site 内部日志)") return False log_info("验证 Nginx 配置...")