Files
backend/database/wait-for-postgres.sh
T

20 lines
514 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
CONTAINER="${POSTGRES_CONTAINER:-ariyaway-postgres}"
DB_USER="${POSTGRES_USER:-ariyaway}"
DB_NAME="${POSTGRES_DB:-ariyaway}"
MAX_ATTEMPTS="${POSTGRES_WAIT_ATTEMPTS:-30}"
for ((i = 1; i <= MAX_ATTEMPTS; i++)); do
if docker exec "$CONTAINER" pg_isready -U "$DB_USER" -d "$DB_NAME" >/dev/null 2>&1; then
echo "Postgres is ready."
exit 0
fi
echo "Waiting for Postgres ($i/$MAX_ATTEMPTS)…"
sleep 1
done
echo "Postgres did not become ready in time." >&2
exit 1