diff --git a/rudder-server/SOURCES/rudder-server-postinst b/rudder-server/SOURCES/rudder-server-postinst index 99a252cc3..1331c4238 100755 --- a/rudder-server/SOURCES/rudder-server-postinst +++ b/rudder-server/SOURCES/rudder-server-postinst @@ -37,13 +37,24 @@ echo "`date` - Starting rudder-server post installation script" >> ${LOG_FILE} # check if a db is configured CREATE_DB="true" -if [ -f /opt/rudder/etc/rudder-web.properties ] && grep -q rudder.jdbc.url /opt/rudder/etc/rudder-web.properties +if [ -f /opt/rudder/etc/rudder-web.properties ] then - # if it is an external DB, do not run - if ! grep -qE 'rudder.jdbc.url=jdbc:postgresql://(localhost|127\.0\.)' /opt/rudder/etc/rudder-web.properties + if grep -q rudder.jdbc.url /opt/rudder/etc/rudder-web.properties then - echo "INFO: External database detected, skipping rudder-reports postinst" - CREATE_DB="false" + # if it is an external DB, do not run + if ! grep -qE 'rudder.jdbc.url=jdbc:postgresql://(localhost|127\.0\.)' /opt/rudder/etc/rudder-web.properties + then + echo "INFO: External database detected, skipping database creation" + CREATE_DB="false" + else + USER=$(grep rudder.jdbc.username /opt/rudder/etc/rudder-web.properties) + CHK_PG_USER=$(su postgres -c "psql -t -c \"select count(1) from pg_user where usename = '${USERNAME}'\"") + if [ ${CHK_PG_DB} -ne 0 ] + then + echo "INFO: Existing database detected, skipping database creation" + CREATE_DB="false" + fi + fi fi fi