From 6cbcb5019105d1f0587c5c1188b7cabd636fc000 Mon Sep 17 00:00:00 2001 From: simoleo89 Date: Mon, 7 Sep 2026 21:35:17 +0200 Subject: [PATCH] chore(deploy): identify the existing CMS listener before cutover --- scripts/ci-deploy.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/scripts/ci-deploy.sh b/scripts/ci-deploy.sh index b77c89073b..2ffdaa6df2 100644 --- a/scripts/ci-deploy.sh +++ b/scripts/ci-deploy.sh @@ -69,6 +69,21 @@ trap 'exit 130' INT trap 'exit 143' TERM check_current +# Read-only ownership evidence before any build or container cutover. +if command -v ss >/dev/null 2>&1; then + listeners="$(ss -ltnp 'sport = :3002' 2>/dev/null || true)" + printf '%s\n' "$listeners" + while read -r listener_pid; do + [ -n "$listener_pid" ] || continue + printf 'Port owner PID=%s cwd=' "$listener_pid" + readlink "/proc/$listener_pid/cwd" || true + cat "/proc/$listener_pid/cgroup" 2>/dev/null || true + ps -o pid=,ppid=,user=,comm= -p "$listener_pid" || true + done < <(printf '%s' "$listeners" | grep -o 'pid=[0-9]*' | cut -d= -f2 | sort -u) +fi +for managed_name in epicnext-cms epicnext-cms-app; do + docker inspect --format '{{.Name}} running={{.State.Running}} pid={{.State.Pid}} image={{.Image}}' "$managed_name" 2>/dev/null || true +done cp "$deploy_dir/.env" .env pnpm install --frozen-lockfile # Prepare browser before cutover so installation failures cannot interrupt the site.