From: Jean-Marc Pigeon (Delson) Date: Mon, 23 Jun 2025 23:28:34 +0000 (-0400) Subject: Working to intialise mysql and postgresql database X-Git-Tag: tag-0.9~5 X-Git-Url: https://jmp-git.ovh.safe.ca/?a=commitdiff_plain;h=2d230aaa9b9a38979ab069a5112ff112da31798c;p=jmp%2Fmailleur Working to intialise mysql and postgresql database --- diff --git a/conf/mailleur.conf b/conf/mailleur.conf index c2f654e..fe38efd 100644 --- a/conf/mailleur.conf +++ b/conf/mailleur.conf @@ -37,7 +37,7 @@ CA_VERIFY_CLT=0 #to check PEER/server remote certificate DB_TYPE=TO_BE_DEFINED DB_NAME=mailleur DB_HOST=localhost -DB_PORT=5432 +DB_PORT=TO_BE_DEFINED DB_LANG="UTF-8" #------------------------------------------------ #Dovecot storage directory diff --git a/mailleur.spec.in b/mailleur.spec.in index 86542b2..c3c1b9d 100644 --- a/mailleur.spec.in +++ b/mailleur.spec.in @@ -163,7 +163,8 @@ Obsoletes : %{name}-mysql <= %{version}-%{release} %post postgresql if [ "$1" = 1 ]; then sed -i \ - -e "s/DB_TYPE=.*$/DB_TYPE=POSTGRESQL/" \ + -e "s/^DB_TYPE=.*$/DB_TYPE=POSTGRESQL/" \ + -e "s/^DB_PORT=.*$/DB_PORT=5432/" \ %{_sysconfdir}/%{name}/%{name}.conf fi @@ -188,7 +189,8 @@ Obsoletes : %{name}-postgresql <= %{version}-%{release} %post mysql if [ "$1" = 1 ]; then sed -i \ - -e "s/DB_TYPE=.*$/DB_TYPE=MYSQL/" \ + -e "s/^DB_TYPE=.*$/DB_TYPE=MYSQL/" \ + -e "s/^DB_PORT=.*$/DB_PORT=3306/" \ %{_sysconfdir}/%{name}/%{name}.conf fi #============================================================================= diff --git a/support/crdb.sh b/support/crdb.sh index a694c2f..4de10af 100755 --- a/support/crdb.sh +++ b/support/crdb.sh @@ -25,8 +25,9 @@ LOG=/etc/$APPNAME/dbinst.log USER=`id -nu` #building data_base ( -echo "#------------------------------------------" +echo "#==========================================" date +echo "#------------------------------------------" /bin/echo "creating $DB_TYPE:$DB_NAME data-base" >> $LOG ) >> $LOG @@ -42,21 +43,14 @@ case "$DB_TYPE" in echo "MySQL serveur NOT found up and running (exiting!)" exit 1 fi - if [ ! -z "$DB_PORT" ] ; then - SQLPORT="-P $DB_PORT" - fi - SQLHOST="-h localhost"; - if [ ! -z "$DB_HOST" ] ; then - SQLHOST="-h $DB_HOST" - fi if [ "$USER" = "root" ] ; then chown $APPNAME $LOG ( - CREATE DATABASE '$APPNAME'; - CREATE USER '$APPNAME'@'localhost'; - GRANT ALL PRIVILEGES ON '$APPNAME'.* TO '$APPNAME'@'localhost'; - FLUSH PRIVILEGES; - ) | $SQL $SQLHOST $SQLPORT >> $LOG + echo "CREATE DATABASE $APPNAME;" + echo "CREATE USER $APPNAME@localhost;" + echo "GRANT ALL PRIVILEGES ON $APPNAME.* TO $APPNAME@localhost;" + echo "FLUSH PRIVILEGES;" + ) | $SQL >> $LOG /bin/echo "data-base is now created" >> $LOG fi ;; @@ -78,18 +72,15 @@ case "$DB_TYPE" in fi if [ "$USER" = "root" ] ; then chown $APPNAME $LOG - /bin/su - -m postgres >> $LOG << !EOT - echo "CREATE ROLE $APPNAME WITH LOGIN CREATEDB SUPERUSER" | \ - $SQL $SQLHOST $SQLPORT template1 - echo "CREATE ROLE apache WITH LOGIN" | \ - $SQL $SQLHOST $SQLPORT template1 - echo "CREATE ROLE dovecot WITH LOGIN" | \ - $SQL $SQLHOST $SQLPORT template1 - /usr/bin/createdb -T template0 -E $DB_LANG -O \ - $APPNAME $SQLHOST $SQLPORT $DB_NAME -!EOT - /bin/echo "data-base is now created" >> $LOG + ( + echo "CREATE ROLE $APPNAME WITH LOGIN CREATEDB SUPERUSER;" + echo "CREATE ROLE apache WITH LOGIN;" + echo "CREATE ROLE dovecot WITH LOGIN;" + echo "CREATE DATABSE $APPNAME;" + ) | $SQL $SQLHOST $SQLPORT template1 >> $LOG + echo "data-base is now created" >> $LOG fi + ) | $SQL >> $LOG ;; "*" ) #undefined database type at that stage?