#preparing a test area
newtest : deltest
@ mkdir -p $(TESTDIR)/var/run
+ @ mkdir -p $(TESTDIR)/usr/share/$(APPNAME)
@ mkdir -p $(TESTDIR)/var/spool/$(APPNAME)/{in,out}-logs
@ mkdir -p $(TESTDIR)/var/spool/$(APPNAME)/queue
@ mkdir -p $(TESTDIR)/var/spool/$(APPNAME)/mails
@ cp -a \
bin \
$(TESTDIR)/$(SBINDIR)
+ @ cp -a \
+ sql \
+ $(TESTDIR)/usr/share/$(APPNAME)/
deltest :
@ rm -fr $(TESTDIR)
#------------------------------------------------
#Defining application name
APPNAME=mailleur
+#root working directoy definition for the whole application
+ROOTBASE="/"
#defining local default domain
DFLTDOMAIN="localdomain"
#------------------------------------------------
#------------------------------------------------
#Defining application name
APPNAME=mailleur
+#root working directoy definition for the whole application
+ROOTBASE="/home/jmp/safe-mailleur/mailleur/test_area/"
#defining local default domain
DFLTDOMAIN="localtest.example.com"
#------------------------------------------------
CA_VERIFY_CLT=0 #to check PEER/server remote certificate
#------------------------------------------------
#Configured for Postgresql database
-DB_TYPE=POSTGRESQL
+#DB_TYPE can be either POSTGRESQL,MYSQL, default POSTGRESQL
+DB_TYPE=MYSQL
DB_NAME=mailleur
DB_HOST=localhost
DB_PORT=5432
+++ /dev/null
-
-#include "datatest.def"
-
-//password is generated via command line:
-//openssl password
-//present password is crypte 'mailleur'
-//adding a list of local email
-INSERT INTO emails (email,passwd) \
- values ('user1@mardb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
-INSERT INTO emails (email,passwd) \
- values ('user2@mardb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
+++ /dev/null
-
-#include "datatest.def"
-
-//password is generated via command line:
-//openssl password
-//present password is crypte 'mailleur'
-//adding a list of local email
-INSERT INTO emails (email,passwd) \
- values ('user1@posdb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
-INSERT INTO emails (email,passwd) \
- values ('user2@posdb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
//openssl password
//present password is crypte 'mailleur'
//adding a list of local email
+
INSERT INTO emails (email,passwd) \
values ('postmaster@example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
INSERT INTO emails (email,passwd) \
values ('webmaster@example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
+
+//Set for Postgresql database
+INSERT INTO emails (email,passwd) \
+ values ('user1@posdb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
+INSERT INTO emails (email,passwd) \
+ values ('user2@posdb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
+
+//Set for MySQL database
+INSERT INTO emails (email,passwd) \
+ values ('user1@mardb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
+INSERT INTO emails (email,passwd) \
+ values ('user2@mardb.example.com','$1$cBO23lDG$7l.Ooe7pF.gf8t6tD2mKp0');
--- /dev/null
+#! /usr/bin/bash
+#---------------------------------------------------------------
+#program to reset the database contents
+#parameters ["doit"] "confdirectory
+#---------------------------------------------------------------
+#start delay
+DELAY=10
+DOIT=doit
+#---------------------------------------------------------------
+if [ $# -ge 1 -a "$1" != "$DOIT" ] ; then
+ echo ""
+ echo "-----------"
+ echo "ATTENTION! you are requesting a FULL database RESET"
+ echo "Are you sure!"
+ echo "You have $DELAY seconds to cancel (CTRL-C)"
+ echo "-----------"
+ sleep $DELAY
+ fi
+if [ $1 == $DOIT ] ; then
+ shift;
+ fi
+if [ $# -gt 0 ] ; then
+ . $1
+ fi
+
+#---------------------------------------------------------------
+#destroying the database
+case "$DB_TYPE" in
+ "POSTGRESQL" )
+ DB=$(psql -U postgres -tAc "SELECT 1 FROM pg_database WHERE datname='${APPNAME}'")
+ if [ "$DB" = "1" ] ; then
+ echo "drop database $APPNAME;" | psql -q -U postgres template1
+ fi
+ echo "create database $APPNAME;" | psql -q -U postgres template1
+ SQL="psql -q $APPNAME"
+ ;;
+ "MYSQL" )
+ echo "Got Mysql"
+ exit 1
+ ;;
+ * )
+ echo $DB_TYPE is not expected!, check configuration file!
+ exit 1
+ ;;
+ esac
+
+#loading database
+cpp -P -D$DB_TYPE $ROOTBASE/usr/share/$APPNAME/sql/$APPNAME.sql | $SQL
+cpp -P -D$DB_TYPE $ROOTBASE/usr/share/$APPNAME/sql/datatest.sql | $SQL