X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=regress%2Ftests%2Fsix-vol-test;h=bdf6f846dc953e7ff8a87af44896f5f73b86baf6;hb=a752597b2a79ba0f2dfb0ec6b6da8403464e092b;hp=1c369e0c254bf9e58c47feaf08a342c14ed51816;hpb=2553d1905ea8a76cd9d9a6a0a8c6e48c8d8c0dab;p=bacula%2Fbacula diff --git a/regress/tests/six-vol-test b/regress/tests/six-vol-test index 1c369e0c25..bdf6f846dc 100755 --- a/regress/tests/six-vol-test +++ b/regress/tests/six-vol-test @@ -3,52 +3,70 @@ # Create a 60MB file with random bytes. Back it up to 6 Volumes # each constrained to 10MB using the automatic labeling feature. # + +if test ! -c /dev/urandom ; then + echo "No random device. Test skipped.\n" + exit 0 +fi cwd=`pwd` scripts/copy-testa-confs -rm -rf tmp/SmallVols* tmp/bacula-restores tmp/largefile +scripts/cleanup echo "${cwd}/tmp/largefile" >/tmp/file-list # Create 56MB file with random data echo "Creating a 56MB file with random data ..." dd if=/dev/urandom of=${cwd}/tmp/largefile bs=1024 count=55000 echo "largefile created" -bin/bacula stop 2>&1 >/dev/null -bin/drop_sqlite_tables -bin/make_sqlite_tables echo " " echo " " -echo " === Starting two-vol-test ===" +echo " === Starting six-vol-test at `date +%R:%S` ===" +echo " === Starting six-vol-test at `date +%R:%S` ===" >>working/log echo " " -bin/bacula start -bin/console -c bin/console.conf <&1 >/dev/null +bin/bconsole -c bin/bconsole.conf <&1 >/dev/null +@output /dev/null messages -@output -run job=MultiVol storage=File -yes +@output tmp/log1.out +run job=MultiVol storage=File yes wait messages @# @# now do a restore @# -restore where=${cwd}/tmp/bacula-restores -5 +@output tmp/log2.out +restore where=${cwd}/tmp/bacula-restores select storage=File +unmark * +mark * done yes wait messages +@output quit END_OF_DATA -bin/bacula stop -diff -ur tmp/largefile tmp/bacula-restores${cwd}/tmp/largefile -if [ $? != 0 ] ; then +scripts/check_for_zombie_jobs storage=File +bin/bacula stop 2>&1 >/dev/null +grep "^ Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null +bstat=$? +grep "^ Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null +rstat=$? +diff tmp/largefile tmp/bacula-restores${cwd}/tmp/largefile 2>&1 >/dev/null +if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then echo " " echo " " - echo " ===== six-vol-test Bacula source failed!!! ===== " - echo " ===== six-vol-test failed!!! ===== " >>test.out + echo " !!!!! six-vol-test Bacula source failed!!! !!!!! " + echo " !!!!! six-vol-test failed!!! !!!!! " >>test.out + if [ $bstat != 0 -o $rstat != 0 ] ; then + echo " !!!!! Bad Job termination status !!!!! " + echo " !!!!! Bad Job termination status !!!!! " >>test.out + else + echo " !!!!! Restored files differ !!!!! " + echo " !!!!! Restored files differ !!!!! " >>test.out + fi echo " " else echo " ===== six-vol-test Bacula source OK ===== " echo " ===== six-vol-test OK ===== " >>test.out - rm -rf tmp/bacula-restores tmp/SmallVols* tmp/largefile + scripts/cleanup fi