#!/usr/bin/env bash # Применить SQL к уже существующей БД (если том postgres не пересоздавали). set -euo pipefail ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "$ROOT" ENV_FILE="${ROOT}/.env" [[ -f "$ENV_FILE" ]] || { echo "Нет .env — сначала ./install.sh"; exit 1; } read_env() { grep -m1 "^${1}=" "$ENV_FILE" | sed "s/^${1}=//"; } U="$(read_env POSTGRES_USER)" DB="$(read_env POSTGRES_DB)" export PGPASSWORD="$(read_env POSTGRES_PASSWORD)" for f in "$ROOT"/docker/initdb/0*.sql; do echo "==> $(basename "$f")" docker compose exec -T postgres psql -v ON_ERROR_STOP=1 -U "$U" -d "$DB" -f - <"$f" done echo "Готово."