]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/backup-bacula-test
Final changes
[bacula/bacula] / regress / tests / backup-bacula-test
1 #!/bin/sh
2 #
3 # Run a simple backup of the Bacula build directory
4 #   then restore it.
5 #
6 debug=0
7 if test "$debug" -eq 1 ; then
8   out="tee"
9 else
10   out="output"
11 fi
12
13 cwd=`pwd`
14 scripts/copy-confs
15 scripts/cleanup
16
17 echo " "
18 echo " "
19 echo " === Starting Backup Bacula Test at `date +%R:%S` ==="
20 echo " === Starting Backup Bacula Test at `date +%R:%S` ===" >>working/log
21 echo " "
22
23 cat <<END_OF_DATA >tmp/bconcmds
24 @output /dev/null
25 messages
26 @$out tmp/log1.out
27 label volume=TestVolume001
28 @#setdebug level=100 storage=File
29 run job=Client1 yes
30 status storage=File
31 status storage=File
32 status storage=File
33 status storage=File
34 status storage=File
35 status storage=File
36 sleep 1
37 status storage=File
38 status storage=File
39 status storage=File
40 status storage=File
41 status storage=File
42 sleep 1
43 status storage=File
44 status storage=File
45 status storage=File
46 status storage=File
47 status storage=File
48 wait
49 messages
50 @# 
51 @# now do a restore
52 @#
53 @$out tmp/log2.out  
54 restore where=${cwd}/tmp/bacula-restores select all done
55 yes
56 wait
57 messages
58 @$out
59 quit
60 END_OF_DATA
61
62 if test "$debug" -eq 1 ; then
63   bin/bacula start
64   cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf
65 else
66   bin/bacula start 2>&1 >/dev/null
67   cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf  2>&1 >/dev/null
68 fi
69
70 scripts/check_for_zombie_jobs storage=File
71 bin/bacula stop 2>&1 >/dev/null
72 grep "^  Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null
73 bstat=$?
74 grep "^  Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null
75 rstat=$?
76 diff -r build tmp/bacula-restores${cwd}/build 2>&1 >/dev/null
77 if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
78    echo " "
79    echo " "
80    echo "  !!!!! Backup Bacula Test failed!!! !!!!! "
81    echo "  !!!!! Backup Bacula Test failed!!! !!!!! " >>test.out
82    if [ $bstat != 0 -o $rstat != 0 ] ; then
83       echo "  !!!!! Bad Job termination status     !!!!! "
84       echo "  !!!!! Bad Job termination status     !!!!! " >>test.out
85    else
86       echo "  !!!!! Restored files differ          !!!!! "
87       echo "  !!!!! Restored files differ          !!!!! " >>test.out
88    fi
89    echo " "
90 else
91    echo "  ===== Backup Bacula Test OK ===== "
92    echo "  ===== Backup Bacula Test OK ===== " >>test.out
93    scripts/cleanup
94 fi