]> git.sur5r.net Git - bacula/bacula/blobdiff - regress/tests/accurate-test
ebl Tweak the test to use "wait mount" instead of sleep
[bacula/bacula] / regress / tests / accurate-test
index a94449149fee979aad9ca00eeb8d6203d11385dd..80168c8b4be86f47fe11df7b2c93e10b66d80fb3 100755 (executable)
@@ -7,6 +7,7 @@
 # Run a accurate backup of the Bacula build directory
 #   then restore it.
 #
+
 TestName="accurate-test"
 JobName=backup
 . scripts/functions
@@ -19,6 +20,13 @@ cp tmp/1 bin/bacula-fd.conf
 
 change_jobname Client1 $JobName
 
+p() {
+    echo "##############################################" >> ${cwd}/tmp/log1.out
+    echo "$*" >> ${cwd}/tmp/log1.out
+    echo "##############################################" >> ${cwd}/tmp/log2.out
+    echo "$*" >> ${cwd}/tmp/log2.out
+}
+
 # cleanup
 rm -rf ${cwd}/build/accurate.new
 rm -rf ${cwd}/build/accurate
@@ -26,6 +34,8 @@ rm -rf ${cwd}/build/accurate
 
 # add extra files
 mkdir ${cwd}/build/accurate
+mkdir ${cwd}/build/accurate/dirtest
+echo "test test" > ${cwd}/build/accurate/dirtest/hello
 echo "test test" > ${cwd}/build/accurate/xxx
 echo "test test" > ${cwd}/build/accurate/yyy
 echo "test test" > ${cwd}/build/accurate/zzz
@@ -57,6 +67,7 @@ messages
 @# now do a restore
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -66,7 +77,7 @@ quit
 END_OF_DATA
 
 ################################################################
-# First :  We just run full and restore to compare if all is ok
+p First :  We just run full and restore to compare if all is ok
 ################################################################
 
 run_bconsole
@@ -78,33 +89,37 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a second backup after making few changes
+p Now do a second backup after making few changes
 ################################################################
 rm ${cwd}/build/accurate/xxx  # delete a file
+rm ${cwd}/build/accurate/dirtest/hello
 
 run_bconsole
 check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 4
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a third backup after making few changes
+p Now do a third backup after making few changes
 ################################################################
 rm ${cwd}/build/accurate/yyyyyy  # delete a file
+rmdir ${cwd}/build/accurate/dirtest
 
 run_bconsole
 check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 3
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a 4 backup after making few changes
+p Now do a 4 backup after making few changes
 ################################################################
 rm ${cwd}/build/accurate/zzzzzz  # delete a file
 
@@ -113,11 +128,12 @@ check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 2
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a 5 backup after making few changes
+p Now do a 5 backup after making few changes
 ################################################################
 rm ${cwd}/build/accurate/zzzzzzzzz
 
@@ -126,11 +142,12 @@ check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 2
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a backup after making few changes
+p Now do a backup after making few changes
 ################################################################
 touch ${cwd}/build/accurate/aaaaaa
 
@@ -139,21 +156,22 @@ check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 2
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Check with bls
+p Check with bls
 ################################################################
 
-${cwd}/bin/bls -c ${cwd}/bin/bacula-sd.conf -V 'TestVolume001' FileStorage > tmp/bls.out
+$bin/bls -c bin/bacula-sd.conf -V 'TestVolume001' FileStorage > tmp/bls.out
 grep -- '----' tmp/bls.out | grep xxx > /dev/null
 if [ $? != 0 ] ; then
     bstat=2
 fi
 
 ################################################################
-# Now do a backup after making few changes
+p Now do a backup after making few changes
 ################################################################
 
 # some files will have disappear, others have their old mtime/ctime
@@ -168,7 +186,7 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do an other test in differential mode
+p Now do an other test in differential mode
 ################################################################
 
 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
@@ -180,6 +198,7 @@ messages
 @# now do a restore
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -197,7 +216,7 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do an other test in differential mode + incremental
+p Now do an other test in differential mode + incremental
 ################################################################
 
 # make some changes
@@ -212,6 +231,7 @@ messages
 @# now do a restore
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -229,19 +249,20 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a backup after making few changes
+p Now do a backup after making few changes
 ################################################################
 rm ${cwd}/build/accurate/aaaaaa
 touch ${cwd}/build/accurate/bbbbbb
 
 run_bconsole
 check_for_zombie_jobs storage=File
+check_files_written ${cwd}/tmp/log1.out 3
 
 check_two_logs
 check_restore_diff
 
 ################################################################
-# Now do a backup after making few changes
+p Now do a backup after making few changes
 ################################################################
 mv ${cwd}/tmp/bacula-restores ${cwd}/build/accurate/
 
@@ -254,7 +275,7 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores ${cwd}/build/accurate/bacula-restores
 
 ################################################################
-# Check with bscan
+p Check with bscan
 ################################################################
 
 stop_bacula
@@ -269,15 +290,16 @@ echo "volume=TestVolume001" >tmp/bscan.bsr
 
 bscan_libdbi
 
-${cwd}/bin/bscan -c ${cwd}/bin/bacula-sd.conf $BSCANLIBDBI -n regress -u regress -m -s -b tmp/bscan.bsr FileStorage 2>&1 > ${cwd}/tmp/bscan.log
+$bin/bscan -c bin/bacula-sd.conf $BSCANLIBDBI -n regress -u regress -m -s -b tmp/bscan.bsr FileStorage 2>&1 > ${cwd}/tmp/bscan.log
 
 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
 @$out ${cwd}/tmp/log1.out
 messages
 @# 
-@# now do a restore
+@# now do a restore after bscan
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -297,7 +319,7 @@ check_restore_diff
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Now do a test with other attributes (owner, gid, rights)
+p Now do a test with other attributes: owner, gid, rights
 ################################################################
 
 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
@@ -310,6 +332,7 @@ messages
 @# now do a restore
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB_ADVANCE where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -328,7 +351,7 @@ rm -rf ${cwd}/tmp/bacula-restores
 
 
 ################################################################
-# Use the p option for verify
+p Use the p option for verify
 ################################################################
 
 chmod 400 ${cwd}/build/accurate/yyy
@@ -342,6 +365,7 @@ messages
 @# now do a restore
 @#
 @$out ${cwd}/tmp/log2.out  
+setdebug level=10 storage=File
 restore fileset=FS_TESTJOB_ADVANCE where=${cwd}/tmp/bacula-restores select all done
 yes
 wait
@@ -355,11 +379,12 @@ check_for_zombie_jobs storage=File
 
 check_two_logs
 check_restore_diff
+check_files_written ${cwd}/tmp/log1.out 1
 
 rm -rf ${cwd}/tmp/bacula-restores
 
 ################################################################
-# Test strippath option
+p Test strippath option
 ################################################################
 
 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
@@ -393,7 +418,7 @@ run_bconsole
 
 grep yyy ${cwd}/tmp/log3.out > /dev/null
 if [ $? != 0 ] ; then
-    print_debug "Can't find xxx file into 'list files' output (${cwd}/tmp/log3.out)"
+    print_debug "Can't find yyy file into 'list files' output (${cwd}/tmp/log3.out)"
     dstat=2
 fi