diff --git a/dba/create-database.sh b/dba/create-database.sh index 4d81552b..32dc5f67 100755 --- a/dba/create-database.sh +++ b/dba/create-database.sh @@ -32,19 +32,19 @@ export AWL_DBAUSER=davical_dba export AWL_APPUSER=davical_app # Get the major version for PostgreSQL -export DBVERSION="`psql -qAt -c "SELECT version();" template1 | cut -f2 -d' ' | cut -f1-2 -d'.'`" +export DBVERSION="`psql -qXAt -c "SELECT version();" template1 | cut -f2 -d' ' | cut -f1-2 -d'.'`" install_note() { cat >>"${INSTALL_NOTE_FN}" } db_users() { - psql -qAt -c "SELECT usename FROM pg_user;" template1 + psql -qXAt -c "SELECT usename FROM pg_user;" template1 } create_db_user() { if ! db_users | grep "^${1}$" >/dev/null ; then - psql -qAt -c "CREATE USER ${1} NOCREATEDB NOCREATEROLE;" template1 + psql -qXAt -c "CREATE USER ${1} NOCREATEDB NOCREATEROLE;" template1 cat </dev/null; then + if ! psql ${DBA} -qXAt -c "SELECT lanname FROM pg_language;" "${DBNAME}" | grep "^plpgsql$" >/dev/null; then createlang plpgsql "${DBNAME}" fi } try_db_user() { - [ "XtestX`psql -U "${1}" -qAt -c \"SELECT usename FROM pg_user;\" \"${DBNAME}\" 2>/dev/null`" != "XtestX" ] + [ "XtestX`psql -U "${1}" -qXAt -c \"SELECT usename FROM pg_user;\" \"${DBNAME}\" 2>/dev/null`" != "XtestX" ] } +# Hide all the annoying NOTICE... messages +export PGOPTIONS='--client-min-messages=warning' create_db_user "${AWL_DBAUSER}" create_db_user "${AWL_APPUSER}" @@ -113,12 +115,12 @@ create_plpgsql_language # # Load the AWL base tables and schema management tables -psql -qAt ${DBA} -f "${AWLDIR}/dba/awl-tables.sql" "${DBNAME}" 2>&1 | egrep -v "(^CREATE |^GRANT|^BEGIN|^COMMIT| NOTICE: )" -psql -qAt ${DBA} -f "${AWLDIR}/dba/schema-management.sql" "${DBNAME}" 2>&1 | egrep -v "(^CREATE |^GRANT|^BEGIN|^COMMIT| NOTICE: |^t$)" +psql -qXAt ${DBA} -f "${AWLDIR}/dba/awl-tables.sql" "${DBNAME}" 2>&1 +psql -qXAt ${DBA} -f "${AWLDIR}/dba/schema-management.sql" "${DBNAME}" 2>&1 # # Load the DAViCal tables -psql -qAt ${DBA} -f "${DBADIR}/davical.sql" "${DBNAME}" 2>&1 | egrep -v "(^CREATE |^GRANT|^BEGIN|^COMMIT| NOTICE: |^t$)" +psql -qXAt ${DBA} -f "${DBADIR}/davical.sql" "${DBNAME}" 2>&1 # # Set permissions for the application DB user on the database @@ -139,7 +141,7 @@ EOFAILURE fi # # Load the required base data -psql -qAt ${DBA} -f "${DBADIR}/base-data.sql" "${DBNAME}" | egrep -v '^10' +psql -qXAt ${DBA} -f "${DBADIR}/base-data.sql" "${DBNAME}" | egrep -v '^10' # # We can override the admin password generation for regression testing predictability @@ -163,7 +165,7 @@ if [ "$ADMINPW" = "" ] ; then ADMINPW="please change this password" fi -psql -q -c "UPDATE usr SET password = '**${ADMINPW}' WHERE user_no = 1;" "${DBNAME}" +psql -qX -c "UPDATE usr SET password = '**${ADMINPW}' WHERE user_no = 1;" "${DBNAME}" echo "NOTE" echo "====" diff --git a/testing/tests/regression-suite/Create-Database.result b/testing/tests/regression-suite/Create-Database.result index 3e30e5a6..e9c60e92 100644 --- a/testing/tests/regression-suite/Create-Database.result +++ b/testing/tests/regression-suite/Create-Database.result @@ -1,3 +1,5 @@ + + Supported locales updated. Updated view: dav_principal.sql applied. CalDAV functions updated.