#!/bin/bash

# $1: user name and password for new DB (equals DB name)
# $2: path to directory with schema-scripts

# run as user postgres (postgresql super-user)
# it is assumed that the owner of the DB has the same name as the DB!

# create PostGIS-DB
createuser -S -D -R $1
createdb $1
createlang plpgsql $1
psql -d $1 -f /usr/share/postgresql/contrib/postgis-1.5/postgis.sql
psql -d $1 -f /usr/share/postgresql/contrib/postgis-1.5/spatial_ref_sys.sql
psql -d $1 -c "ALTER USER $1 PASSWORD $1;"
psql -d $1 -c "GRANT ALL ON geometry_columns TO $1; GRANT ALL ON geography_columns TO $1; GRANT ALL ON spatial_ref_sys TO $1;"

# add credentials to .pgpass (or create .pgpass)
echo "*:*:$1:$1:$1" >> ~/.pgpass
chmod 0600 ~/.pgpass

# apply schema-scripts
psql -d $1 -U $1 -h $HOST -f $2/postgresql.sql
psql -d $1 -U $1 -h $HOST -f $2/postgresql-spatial.sql
psql -d $1 -U $1 -h $HOST -f $2/postgresql-minfo.sql
