2013-10-01 13:03:30 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
2013-10-25 10:22:08 +00:00
|
|
|
CONFFILE=/etc/mailman-migration.conf
|
2013-10-01 13:03:30 +00:00
|
|
|
|
|
|
|
set -e
|
|
|
|
|
2013-10-25 14:23:16 +00:00
|
|
|
export PATH=$PATH:$(dirname $(realpath $0)) # make yamlget available
|
|
|
|
|
|
|
|
BASEDIR=`yamlget basedir $CONFFILE`
|
|
|
|
CONFDIR=`yamlget confdir $CONFFILE`
|
2015-03-13 14:21:42 +00:00
|
|
|
INDEXDIR=$BASEDIR/fulltext_index
|
2013-10-25 14:23:16 +00:00
|
|
|
|
2016-09-16 10:17:09 +00:00
|
|
|
sleep $[ ( $RANDOM % 10 ) + 1 ]s # avoid simultaneous lockups on parallel servers. Yes, this is dirty.
|
|
|
|
|
2017-01-26 10:41:49 +00:00
|
|
|
echo "Stop services"
|
2017-08-03 15:33:44 +00:00
|
|
|
systemctl stop webui-qcluster crond httpd
|
2017-01-26 10:41:49 +00:00
|
|
|
|
2016-09-08 06:38:26 +00:00
|
|
|
echo "static files"
|
2014-06-18 15:12:15 +00:00
|
|
|
django-admin collectstatic --clear --noinput --verbosity 0 --pythonpath $CONFDIR --settings settings
|
2014-09-16 15:01:06 +00:00
|
|
|
django-admin compress --pythonpath $CONFDIR --settings settings
|
2016-09-08 06:38:26 +00:00
|
|
|
echo "db migration"
|
2016-01-24 12:27:21 +00:00
|
|
|
django-admin migrate --pythonpath $CONFDIR --settings settings_admin --noinput
|
2017-03-23 11:03:42 +00:00
|
|
|
|
|
|
|
echo "give database rights to the non-admin user"
|
|
|
|
# this must be done before loading initial data
|
|
|
|
$BASEDIR/bin/pg-give-rights.py > /dev/null
|
|
|
|
|
2016-09-08 06:38:26 +00:00
|
|
|
echo "load initial data"
|
|
|
|
django-admin loaddata $CONFDIR/initial-data.json --pythonpath $CONFDIR --settings settings
|
2015-05-11 16:14:07 +00:00
|
|
|
mkdir -p $INDEXDIR
|
|
|
|
chown apache:apache -R $INDEXDIR
|
2013-10-01 13:03:30 +00:00
|
|
|
|
2014-02-10 19:22:18 +00:00
|
|
|
# SELinux contexts
|
2016-09-08 06:38:26 +00:00
|
|
|
echo "SELinux contexts"
|
2017-01-26 10:41:49 +00:00
|
|
|
restorecon -r $BASEDIR/{bin,config,fulltext_index,static,templates}
|
2014-02-10 19:22:18 +00:00
|
|
|
|
2014-06-03 13:35:38 +00:00
|
|
|
# Run unit tests
|
2016-09-08 06:38:26 +00:00
|
|
|
echo "unit tests"
|
2017-06-06 19:00:12 +00:00
|
|
|
django-admin test --pythonpath $CONFDIR --settings settings_test django_mailman3 hyperkitty postorius
|
2014-06-03 13:35:38 +00:00
|
|
|
|
2017-01-26 10:41:49 +00:00
|
|
|
# Restart services
|
2017-06-25 08:42:33 +00:00
|
|
|
echo "Start services"
|
2017-08-03 15:33:44 +00:00
|
|
|
systemctl start httpd crond webui-qcluster
|