#!/bin/sh set -eu conf_anastasis_db=/etc/taler/secrets/anastasis-db.secret.conf conf_override=/etc/taler/override.conf # get database settings from dbconfig-common and configure # for ADMINISTRATIVE access if [ -f /etc/dbconfig-common/anastasis.conf ]; then . /etc/dbconfig-common/anastasis.conf case "$dbc_dbtype" in pgsql) anastasis-config \ -c $conf_anastasis_db \ -s "stasis-postgres" \ -o "CONFIG" \ -V "postgres:///$dbc_dbname" anastasis-config \ -c $conf_override \ -s "anastasis" \ -o "DB" \ -V "postgres" ;; sqlite3) # Later: use something like: # sqlite:///$DATA_DIR/merchant.db # But for now, sqlite is unsupported: echo "Unsupported database type $dbc_type." exit 1 ;; "") ;; *) echo "Unsupported database type $dbc_type." exit 1 ;; esac fi # Run database initialization logic sudo -u postgres anastasis-dbinit -c /etc/anastasis.conf # get database settings from dbconfig-common and configure # for service access! if [ -f /etc/dbconfig-common/anastasis.conf ]; then . /etc/dbconfig-common/anastasis.conf case "$dbc_dbtype" in pgsql) echo "GRANT INSERT, SELECT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public TO \"$dbc_dbuser\";" \ | sudo -u postgres psql "postgres:///$dbc_dbname" echo "GRANT SELECT, UPDATE ON ALL SEQUENCES IN SCHEMA public TO \"$dbc_dbuser\";" \ | sudo -u postgres psql "postgres:///$dbc_dbname" anastasis-config \ -c $conf_anastasis_db \ -s "stasis-postgres" \ -o "CONFIG" \ -V "postgres://$dbc_dbuser:$dbc_dbpass@$dbc_dbserver/$dbc_dbname" anastasis-config \ -c $conf_override \ -s "anastasis" \ -o "DB" \ -V "postgres" ;; sqlite3) # Later: use something like: # sqlite:///$DATA_DIR/merchant.db # But for now, sqlite is unsupported: echo "Unsupported database type $dbc_type." exit 1 ;; "") ;; *) echo "Unsupported database type $dbc_type." exit 1 ;; esac fi