diff --git a/ops/deploy_via_tat.py b/ops/deploy_via_tat.py index 94ecbad..3951674 100755 --- a/ops/deploy_via_tat.py +++ b/ops/deploy_via_tat.py @@ -220,11 +220,23 @@ python3 -m venv .venv .venv/bin/pip install --quiet --disable-pip-version-check -r requirements-ops.txt bash scripts/install_systemd.sh -systemctl reset-failed hy-app-monitor-yumi.service hy-app-monitor-haiyi.service hy-app-monitor.service || true -systemctl restart hy-app-monitor-yumi.service hy-app-monitor-haiyi.service hy-app-monitor.service -systemctl is-active hy-app-monitor-yumi.service -systemctl is-active hy-app-monitor-haiyi.service -systemctl is-active hy-app-monitor.service + +restart_unit() {{ + local unit="$1" + # 先清理一次可能残留的 start-limit 状态。 + systemctl reset-failed "$unit" || true + # 优先直接重启;如果被限流或中途失败,再补一次 reset/start。 + if ! systemctl restart "$unit"; then + systemctl reset-failed "$unit" || true + systemctl start "$unit" + fi + # 每个服务都单独校验 active,避免批量命令掩盖具体失败项。 + systemctl is-active "$unit" +}} + +restart_unit hy-app-monitor-yumi.service +restart_unit hy-app-monitor-haiyi.service +restart_unit hy-app-monitor.service ss -lntp | grep ":$APP_PORT" || true """