#!/bin/bash
#BLURB="PostgreSQL 17"

PG_HOME=/var/lib/pgsql
PG_USER=postgres
PG_USER_ID=209
PG_GROUP=postgres
PG_GROUP_ID=209
PG_VERSION=17

echo "Adding PostgreSQL user and group..."
groupadd -g $PG_GROUP_ID $PG_GROUP
useradd -g $PG_GROUP -u $PG_USER_ID -d $PG_HOME -c PostgreSQL $PG_USER
mkdir -p $PG_HOME/$PG_VERSION/data

## default permissions
echo "Setting up permissions..."
chown -R $PG_USER:$PG_GROUP $PG_HOME
chmod 700 $PG_HOME
chmod 700 $PG_HOME/$PG_VERSION
chmod 700 $PG_HOME/$PG_VERSION/data

## database cluster
if [ ! -f $PG_HOME/$PG_VERSION/data/PG_VERSION ]; then
	echo "Creating database cluster in $PG_HOME/$PG_VERSION/data..."
	su $PG_USER -c "initdb -D $PG_HOME/$PG_VERSION/data --locale=en_US.UTF-8 -A md5 -W"
else
	echo "*** WARNING ***" >&2
	echo "  There is already a database cluster in $PG_HOME/$PG_VERSION/data." >&2
	echo "  If you are upgrading from an older version of PostgreSQL" >&2
	echo "  you will have to 'dump' and 'restore' your database." >&2
	echo "  See PostgreSQL manual for more details." >&2
fi

echo "PostgreSQL post-installation setup completed"
