#
# This script uses the virtual disk autochanger
#
-TestName="incremental-2disk-test"
+TestName="incremental-2disk"
JobName=Inc2disk
. scripts/functions
-set_debug 0
-. config.out
stop_bacula
cd bin
scripts/copy-2disk-confs
scripts/prepare-two-disks
-echo "${cwd}/tmp/build" >/tmp/file-list
+echo "${cwd}/tmp/build" >${cwd}/tmp/file-list
if test ! -d ${cwd}/tmp/build ; then
mkdir ${cwd}/tmp/build
fi
start_test
# Write out bconsole commands
-cat <<END_OF_DATA >tmp/bconcmds
+cat <<END_OF_DATA >${cwd}/tmp/bconcmds
@$out /dev/null
messages
-@$out tmp/log1.out
+@$out ${cwd}/tmp/log1.out
label storage=DDS-4 volume=TestVolume001 slot=1 Pool=Default drive=0
label storage=DDS-4 volume=TestVolume002 slot=2 Pool=Default drive=0
run job=$JobName yes
echo "ficheriro2.txt" >${cwd}/tmp/build/ficheriro2.txt
-cat <<END_OF_DATA >tmp/bconcmds
+cat <<END_OF_DATA >${cwd}/tmp/bconcmds
@$out /dev/null
messages
-@$out tmp/log1.out
+@$out ${cwd}/tmp/log1.out
@# Force Incremental on the second Volume
update volume=TestVolume001 VolStatus=Used
run level=Incremental job=$JobName yes
@#
@# now do a restore
@#
-@$out tmp/log2.out
+@$out ${cwd}/tmp/log2.out
restore where=${cwd}/tmp/bacula-restores
7
<${cwd}/tmp/restore-list
#
# Delete .c files because we will only restored the txt files
#
-rm -f tmp/build/*.c
+rm -f ${cwd}/tmp/build/*.c
check_two_logs
check_restore_tmp_build_diff
+
+#
+# This script seems to more or less randomly fail, so we
+# add extra code here to produce a "dump" in the event of
+# an error.
+#
+if [ $dstat != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
+ cat ${cwd}/tmp/log1.out
+ echo " "
+ cat ${cwd}/tmp/log2.out
+ echo " "
+ diff -r ${cwd}/tmp/build ${cwd}/tmp/bacula-restores${cwd}/tmp/build
+fi
+
end_test