update tests to keep in sync with v4
[freeside.git] / FS-Test / bin / freeside-test-stop
1 #!/bin/bash
2
3 set -ae
4
5 echo "Stopping Apache."
6 sudo service apache2 stop
7
8 newname=freeside_test_`date +%Y%m%d`
9 if psql -l |grep -q '^ *freeside '; then
10   if psql -l |grep -q $newname; then
11     echo "Deleting old test database $newname."
12     dropdb "$newname"
13   fi
14   echo "Renaming test database to $newname."
15   psql postgres -c "ALTER DATABASE freeside RENAME TO $newname"
16 fi
17
18 if (sudo grep -q '^test:' /usr/local/etc/freeside/htpasswd); then
19   newhtpasswd=htpasswd_test_`date +%Y%m%d`
20   echo "Renaming htpasswd to $newhtpasswd."
21   sudo mv /usr/local/etc/freeside/htpasswd /usr/local/etc/freeside/$newhtpasswd
22   oldhtpasswd=$( cd /usr/local/etc/freeside; \
23                  ls |grep -P 'htpasswd_\d{8}' | \
24                  sort -nr |head -1 )
25   if [ -f $oldhtpasswd ]; then
26     echo "Renaming $oldhtpasswd to htpasswd."
27     sudo mv /usr/local/etc/freeside/$oldhtpasswd \
28       /usr/local/etc/freeside/htpasswd
29   fi
30 fi
31
32 oldname=$( psql -tl | \
33            cut -d '|' -f 1 | \
34            tr -d ' ' | \
35            grep -P 'freeside_\d{8}' | \
36            sort -nr | head -1 )
37
38 if [ -n "$oldname" ]; then
39   echo "Renaming $oldname to freeside."
40   psql postgres -c "ALTER DATABASE $oldname RENAME TO freeside"
41   echo "Restarting services."
42   sudo service apache2 restart
43   sudo service freeside restart
44 fi
45
46 echo "Done."