Files
Lineage-2/scripts/apply-essence-schema.sh

17 lines
700 B
Bash

#!/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 "Готово."