#!/bin/bash set -e set -u function create_database() { local database=$1 echo "Creating database '$database'" psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL SELECT 1 FROM pg_database WHERE datname = '$database'; DO \$\$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_database WHERE datname = '$database') THEN CREATE DATABASE $database; END IF; END \$\$; GRANT ALL PRIVILEGES ON DATABASE $database TO $POSTGRES_USER; EOSQL } if [ -n "$POSTGRES_MULTIPLE_DATABASES" ]; then echo "Multiple database creation requested: $POSTGRES_MULTIPLE_DATABASES" for db in $(echo "$POSTGRES_MULTIPLE_DATABASES" | tr ',' ' '); do create_database "$db" done echo "Multiple databases created" fi