5 CONTROLLER_IP=%CONTROLLER_IP%
6 COMPUTE_IP=%COMPUTE_IP%
8 DB_PASSWORD=%DB_PASSWORD%
12 if [ ! -e $DATA_DIR ]; then
14 chown postgres $DATA_DIR
17 if [ -e $DATA_DIR/PG_VERSION ]; then
18 # the database has already been initialized, return
23 sudo -u postgres initdb -D $DATA_DIR
25 # Allow readers/writers by IP
26 echo "listen_addresses = '*'" >> $DATA_DIR/postgresql.conf
27 echo "host all all ${CONTROLLER_IP}/32 trust" >> $DATA_DIR/pg_hba.conf
28 echo "host all all ${COMPUTE_IP}/32 trust" >> $DATA_DIR/pg_hba.conf
31 if [ "$1" == "initdb" ]; then
38 while [ $count -le 10 ] && [ $done -eq 0 ]; do
39 sudo -u postgres psql -c "CREATE ROLE ${DB_USER} WITH SUPERUSER LOGIN PASSWORD '${DB_PASSWORD}'" 2> /dev/null
41 echo "[INFO] postgres: failed to create account for ${DB_USER}, trying again"
42 systemctl stop postresql
44 systemctl start postgresql
47 echo "[INFO] postgres: created account for ${DB_USER}, continuing .. "
50 count=`expr $count + 1`
53 if [ $done -eq 0 ]; then
54 echo "[ERROR] postgres: unable to create admin account"
58 ln -s /usr/share/zoneinfo /usr/share/postgresql/timezone || true