From e0b0b4250b011a688c038e27a5759bab3f6af70f Mon Sep 17 00:00:00 2001 From: yiekheng Date: Sun, 3 May 2026 10:16:49 +0800 Subject: [PATCH] chore: remove obsolete scripts/verify_debug.sh Was a one-off C-cycle helper for verifying CM_DEBUG behavior; superseded by tests/test_debug_enabled.py. --- scripts/verify_debug.sh | 120 ---------------------------------------- 1 file changed, 120 deletions(-) delete mode 100755 scripts/verify_debug.sh diff --git a/scripts/verify_debug.sh b/scripts/verify_debug.sh deleted file mode 100755 index 4a4a144..0000000 --- a/scripts/verify_debug.sh +++ /dev/null @@ -1,120 +0,0 @@ -#!/usr/bin/env bash -# Verify the CM_DEBUG env toggle on the cm-web container. -# No DB required — web-view has no DB dependency, and we use --no-deps -# to skip api-server (which needs MySQL). -set -euo pipefail - -usage() { - cat <<'EOF' -Verify the CM_DEBUG env toggle on the cm-web container. - -Usage: - scripts/verify_debug.sh - -What it does: - Brings up web-view twice — once with CM_DEBUG=true, once unset (default - false) — greps the container logs for the Werkzeug "Debug mode" banner - and the "Debugger PIN" line, and reports pass/fail. Tears down on exit. - -Requirements: - - docker compose (v2 plugin) - - sudo (matches scripts/local_build.sh; set NO_SUDO=1 to skip sudo) - - .env at the repo root (copy envs/rex/.env or envs/siong/.env first) - -Exit code: - 0 if both modes behave correctly, non-zero otherwise. -EOF -} - -if [[ "${1:-}" == "-h" || "${1:-}" == "--help" ]]; then - usage - exit 0 -fi - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" -cd "${ROOT_DIR}" - -SUDO="sudo" -[[ "${NO_SUDO:-0}" == "1" ]] && SUDO="" -# shellcheck disable=SC2206 -COMPOSE=(${SUDO} docker compose -f docker-compose.yml -f docker-compose.override.yml) - -SERVICE=web-view -WAIT_SECS=20 - -if [[ ! -f .env ]]; then - echo "ERROR: .env not found at repo root. Copy envs/rex/.env (or envs/siong/.env) first." >&2 - exit 2 -fi - -cleanup() { - echo - echo "==> Cleaning up..." - "${COMPOSE[@]}" down --remove-orphans >/dev/null 2>&1 || true -} -trap cleanup EXIT - -wait_for_banner() { - local left=$WAIT_SECS - while (( left > 0 )); do - if "${COMPOSE[@]}" logs --no-color --tail=80 "${SERVICE}" 2>&1 | grep -q "Debug mode:"; then - return 0 - fi - sleep 1 - ((left--)) - done - return 1 -} - -check_logs() { - local expected_debug="$1" expect_pin="$2" - local logs - logs="$("${COMPOSE[@]}" logs --no-color --tail=80 "${SERVICE}" 2>&1)" - - if ! echo "${logs}" | grep -q "Debug mode: ${expected_debug}"; then - echo "FAIL: expected 'Debug mode: ${expected_debug}' in ${SERVICE} logs" - echo "--- captured logs ---" - echo "${logs}" - return 1 - fi - - if [[ "${expect_pin}" == "yes" ]]; then - if ! echo "${logs}" | grep -q "Debugger PIN:"; then - echo "FAIL: expected 'Debugger PIN:' line, none found" - echo "--- captured logs ---" - echo "${logs}" - return 1 - fi - else - if echo "${logs}" | grep -q "Debugger PIN:"; then - echo "FAIL: 'Debugger PIN:' line present when CM_DEBUG should be off" - echo "--- captured logs ---" - echo "${logs}" - return 1 - fi - fi -} - -run_mode() { - local mode="$1" expected_debug="$2" expect_pin="$3" - echo "==> CM_DEBUG=${mode} — expecting 'Debug mode: ${expected_debug}', PIN ${expect_pin}" - - CM_DEBUG="${mode}" "${COMPOSE[@]}" up -d --build --no-deps "${SERVICE}" >/dev/null - - if ! wait_for_banner; then - echo "FAIL: ${SERVICE} did not print 'Debug mode:' banner within ${WAIT_SECS}s" - "${COMPOSE[@]}" logs --no-color --tail=80 "${SERVICE}" - return 1 - fi - - check_logs "${expected_debug}" "${expect_pin}" || return 1 - echo "PASS" - echo - - "${COMPOSE[@]}" stop "${SERVICE}" >/dev/null -} - -run_mode "true" "on" "yes" || exit 1 -run_mode "false" "off" "no" || exit 1 - -echo "All CM_DEBUG verifications passed."