#!/usr/bin/env bash # ───────────────────────────────────────────────────────────────────────────── # db-drop.sh – Drop this lane's Postgres database inside a docker-compose # service, via `dropdb --if-exists`. Ported verbatim from Shipyard's own # lane-reset / lane-remove scripts. CCAM only ever calls this with a name it # derived itself (server/lib/lane-services.js:dropDatabase), so this script # never needs to re-validate its argument. # # Called as: db-drop.sh (also available as $DB_NAME) # Requires/provides: same as db-create.sh in this same directory. # ───────────────────────────────────────────────────────────────────────────── # @author Nguyễn Ngọc Trí Vĩ set -euo pipefail NAME="${1:-$DB_NAME}" [ -n "$NAME" ] || { echo "db-drop: no database name given" >&2; exit 1; } docker compose -f "$COMPOSE_FILE" exec -T "$DB_SERVICE" dropdb --if-exists -U "$PG_USER" "$NAME" echo "db-drop: dropped $NAME (if it existed)"