Use do_on_exit() in build scripts for cleanup
[strongswan.git] / testing / scripts / load-testconfig
1 #!/bin/bash
2 # Load test specific host configurations
3 #
4 # Copyright (C) 2004  Eric Marchionni, Patrik Rayo
5 # Zuercher Hochschule Winterthur
6 #
7 # This program is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License as published by the
9 # Free Software Foundation; either version 2 of the License, or (at your
10 # option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
11 #
12 # This program is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 # or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15 # for more details.
16
17 . $PWD/scripts/function.sh
18
19 ##########################################################################
20 # load-testconfig requires a testname as an argument
21 #
22
23 testname=$1
24
25 TESTSDIR=$BUILDDIR/tests
26
27 [ -d $TESTSDIR ] || die "Directory '$TESTSDIR' not found"
28 [ -d $TESTSDIR/$testname ] || die "Test '$testname' not found"
29 [ -f $TESTSDIR/$testname/test.conf ] || die "File 'test.conf' is missing"
30
31 source $TESTSDIR/$testname/test.conf
32
33 ##########################################################################
34 # copy test specific configurations to uml hosts
35 #
36
37 if [ -d $TESTSDIR/$testname/hosts ]
38 then
39     for host in `ls $TESTSDIR/$testname/hosts`
40     do
41         eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
42         scp $SSHCONF -r $TESTSDIR/$testname/hosts/$host/etc $HOSTLOGIN:/ > /dev/null 2>&1
43     done
44 fi
45
46
47 ##########################################################################
48 # clear auth.log and daemon.log where IKE messages are logged
49 #
50
51 for host in $IPSECHOSTS
52 do
53     eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
54     ssh $SSHCONF $HOSTLOGIN 'rm -f /var/log/auth.log /var/log/daemon.log; \
55                     kill -SIGHUP `cat /var/run/rsyslogd.pid`' > /dev/null 2>&1
56 done
57
58
59 ##########################################################################
60 # clear radius.log on FreeRadius servers
61 #
62
63 for host in $RADIUSHOSTS
64 do
65     eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
66     ssh $SSHCONF $HOSTLOGIN 'rm -f /var/log/freeradius/radius.log' > /dev/null 2>&1
67 done