#!/bin/bash
# BEGIN CHANGE: cria ot-test-server e ot-beta-server (schema vazio a partir do dump)
set -euo pipefail

DUMP="${1:-/home/ubuntu/DB_backups/DB-new-22-07-2026_16-00-01.sql}"
OUT_DIR="${2:-/tmp/wa-schema-empty}"
SCHEMA_SQL="$OUT_DIR/ot_new_schema_only.sql"
CNF="$OUT_DIR/mysql.cnf"

if [ ! -f "$DUMP" ]; then
  echo "Dump nao encontrado: $DUMP" >&2
  exit 1
fi

mkdir -p "$OUT_DIR"

awk '
  /^-- Dumping data for table/ { next }
  /^LOCK TABLES / { skip=1; next }
  /^UNLOCK TABLES/ { skip=0; next }
  /^INSERT INTO / { next }
  skip { next }
  { print }
' "$DUMP" > "$SCHEMA_SQL"

# Remove diretivas de DB do dump (aplicamos nos nomes novos)
grep -v -E '^CREATE DATABASE|^USE `' "$SCHEMA_SQL" > "$SCHEMA_SQL.tmp" || true
mv "$SCHEMA_SQL.tmp" "$SCHEMA_SQL"

python3 - "$OUT_DIR/mysql.cnf" <<'PY'
import re, sys
cfg_path = "/home/ubuntu/otx2_reseted/config.lua"
out = sys.argv[1]
t = open(cfg_path, encoding="latin-1", errors="ignore").read()
def g(k):
    m = re.search(r'%s\s*=\s*"([^"]*)"' % k, t)
    if not m:
        raise SystemExit("missing " + k)
    return m.group(1)
host, user, pw = g("sqlHost"), g("sqlUser"), g("sqlPass")
open(out, "w").write(
    "[client]\n"
    "host=%s\n"
    "user=%s\n"
    "password=%s\n"
    "protocol=TCP\n" % (host, user, pw)
)
print("host=" + host)
print("user=" + user)
PY

echo "==> Schema SQL: $SCHEMA_SQL ($(wc -l < "$SCHEMA_SQL") lines)"

# --defaults-file (nao extra): ignora /etc/mysql/conf.d que tem bind-address invalido no grupo [mysql]
MYSQL=(mysql --defaults-file="$CNF")

for DB in ot-test-server ot-beta-server; do
  echo "==> CREATE DATABASE \`$DB\`"
  "${MYSQL[@]}" -e "CREATE DATABASE IF NOT EXISTS \`$DB\` DEFAULT CHARACTER SET latin1;"
  echo "==> Import schema into \`$DB\`"
  "${MYSQL[@]}" "$DB" < "$SCHEMA_SQL"
  TABLES=$("${MYSQL[@]}" -N -e "SELECT COUNT(*) FROM information_schema.tables WHERE table_schema='$DB'")
  echo "    tables=$TABLES"
done

# limpa senha do cnf
rm -f "$CNF"
echo "==> OK"
# END CHANGE
