]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/backup-bacula-tape
Updates
[bacula/bacula] / regress / tests / backup-bacula-tape
1 #!/bin/sh
2 #
3 # Run a simple backup of the Bacula build directory 
4 #   to a tape then restore it, we do that twice to ensure that
5 #   we can correctly append to a tape.
6 # We also use the purge and the relabel commands as
7 #   well as a pile of status storage commands.
8 #
9 TestName="backup-bacula-tape"
10 JobName=backuptape
11 . scripts/functions
12 set_debug 0
13
14 scripts/copy-tape-confs
15 scripts/cleanup-tape
16
17 echo "${cwd}/build" >/tmp/file-list
18
19 change_jobname NightlySave $JobName
20 start_test
21
22
23 # Write out bconsole commands
24 cat <<END_OF_DATA >tmp/bconcmds
25 @output /dev/null
26 messages
27 @$out tmp/log1.out
28 @#setdebug level=200 storage=DDS-4
29 label storage=DDS-4 volume=TestVolume001 slot=0 pool=Default
30 purge volume=TestVolume001
31 relabel pool=Default storage=DDS-4 oldVolume=TestVolume001 volume=TestVolume002 slot=0
32 purge volume=TestVolume002
33 relabel pool=Default storage=DDS-4 oldVolume=TestVolume002 volume=TestVolume001 slot=0
34 run job=$JobName yes
35 status storage=DDS-4
36 status storage=DDS-4
37 status storage=DDS-4
38 status storage=DDS-4
39 status storage=DDS-4
40 status storage=DDS-4
41 @sleep 1
42 status storage=DDS-4
43 status storage=DDS-4
44 status storage=DDS-4
45 status storage=DDS-4
46 status storage=DDS-4
47 @sleep 1
48 status storage=DDS-4
49 status storage=DDS-4
50 status storage=DDS-4
51 status storage=DDS-4
52 status storage=DDS-4
53 @sleep 1
54 status storage=DDS-4
55 status storage=DDS-4
56 status storage=DDS-4
57 status storage=DDS-4
58 status storage=DDS-4
59 @sleep 1
60 status storage=DDS-4
61 status storage=DDS-4
62 status storage=DDS-4
63 status storage=DDS-4
64 status storage=DDS-4
65 wait
66 messages
67 @# 
68 @# now do a restore
69 @#
70 @$out tmp/log2.out
71 restore where=${cwd}/tmp/bacula-restores select all storage=DDS-4 done
72 yes
73 wait
74 list volumes
75 messages
76 END_OF_DATA
77
78 run_bacula
79 check_for_zombie_jobs storage=DDS-4
80 stop_bacula
81
82 #
83 # Now do a second backup after making a few changes
84 #
85 touch ${cwd}/build/src/dird/*.c
86 echo "test test" > ${cwd}/build/src/dird/xxx
87
88 cat <<END_OF_DATA >tmp/bconcmds
89 @$out /dev/null
90 messages
91 @$out tmp/log1.out
92 list volumes
93 run job=$JobName yes
94 wait
95 list volumes
96 messages
97 @# 
98 @# now do a second restore
99 @#
100 @$out tmp/log2.out
101 list volumes
102 restore where=${cwd}/tmp/bacula-restores select all storage=DDS-4 done
103 yes
104 wait
105 list volumes
106 messages
107 @$out
108 quit
109 END_OF_DATA
110
111 run_bacula
112 check_for_zombie_jobs storage=DDS-4
113 stop_bacula
114
115 check_two_logs
116 check_restore_diff
117 end_test