3 # Copyright (C) 2000-2015 Kern Sibbald
4 # License: BSD 2-Clause; see file LICENSE-FOSS
8 # Run a simple backup of the Bacula build directory
9 # to a tape then restore it, we do that twice to ensure that
10 # we can correctly append to a tape.
11 # We also use the purge and the relabel commands as
12 # well as a pile of status storage commands.
14 TestName="backup-bacula-tape"
20 scripts/copy-tape-confs
23 echo "${cwd}/build" >${cwd}/tmp/file-list
25 change_jobname NightlySave $JobName
29 # Write out bconsole commands
30 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
33 @$out ${cwd}/tmp/log1.out
34 @#setdebug level=200 storage=tape
35 label storage=tape volume=TestVolume001 slot=0 pool=Default
36 purge volume=TestVolume001
37 relabel pool=Default storage=tape oldVolume=TestVolume001 volume=TestVolume002 slot=0
38 purge volume=TestVolume002
39 relabel pool=Default storage=tape oldVolume=TestVolume002 volume=TestVolume001 slot=0
76 @$out ${cwd}/tmp/log2.out
77 restore where=${cwd}/tmp/bacula-restores select all storage=tape done
85 check_for_zombie_jobs storage=tape
89 # Now do a second backup after making a few changes
91 touch ${cwd}/build/src/dird/*.c
92 echo "test test" > ${cwd}/build/src/dird/xxx
94 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
97 @$out ${cwd}/tmp/log1.out
104 @# now do a second restore
106 @$out ${cwd}/tmp/log2.out
108 restore where=${cwd}/tmp/bacula-restores select all storage=tape done
117 check_for_zombie_jobs storage=tape