1234567891011121314151617181920212223242526 |
- #!/usr/bin/env bash
- set -euo pipefail
- CONTAINER_NAME="rust-test-pg"
- DB_USER="test"
- DB_PASS="test"
- DB_NAME="testdb"
- DB_PORT="5433"
- echo "Starting fresh PostgreSQL container..."
- docker run -d --rm \
- --name "${CONTAINER_NAME}" \
- -e POSTGRES_USER="${DB_USER}" \
- -e POSTGRES_PASSWORD="${DB_PASS}" \
- -e POSTGRES_DB="${DB_NAME}" \
- -p ${DB_PORT}:5432 \
- postgres:16
- echo "Waiting for PostgreSQL to be ready and database '${DB_NAME}' to exist..."
- until docker exec -e PGPASSWORD="${DB_PASS}" "${CONTAINER_NAME}" \
- psql -U "${DB_USER}" -d "${DB_NAME}" -c "SELECT 1;" >/dev/null 2>&1; do
- sleep 0.5
- done
- export DATABASE_URL="host=localhost user=${DB_USER} password=${DB_PASS} dbname=${DB_NAME} port=${DB_PORT}"
|