X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=regress%2Ftests%2Fscratch-pool-test;h=11016ff4edc50f9dcb71354f5e55861a30751768;hb=55b2a841b303bc2ac121e14ce0e6659cb1d46cb0;hp=44ba8fd81a54facaf348fdb25a05f3b3127152ca;hpb=98d8e5d7741282a0368186b0006c7bb2f589b57d;p=bacula%2Fbacula diff --git a/regress/tests/scratch-pool-test b/regress/tests/scratch-pool-test index 44ba8fd81a..11016ff4ed 100755 --- a/regress/tests/scratch-pool-test +++ b/regress/tests/scratch-pool-test @@ -6,58 +6,55 @@ # the next tape. One minor wrinkle: we create the two tapes # in the Scratch pool, so they should be switched to the Default # Pool automatically. +# We set TestVolume001 to not in the changer, so the algorithm +# should find TestVolume002 and use it rather than blocking. # # Note we use the viritual disk autochanger # -debug=0 -. config.out +TestName="scratch-pool-test" +JobName=scratch-pool +. scripts/functions + if test x${AUTOCHANGER} = x/dev/null ; then echo "two-volume-test skipped. No autochanger." exit fi -if test "$debug" -eq 1 ; then - out="tee" -else - out="output" -fi cwd=`pwd` scripts/cleanup scripts/copy-2disk-confs -scripts/prepare-two-disks +scripts/prepare-disk-changer -echo "${cwd}/build" >/tmp/file-list +echo "${cwd}/build" >${cwd}/tmp/file-list -outf="tmp/sed_tmp" +outf="${cwd}/tmp/sed_tmp" echo "s%# Maximum File Size% Maximum File Size%g" >${outf} cp ${cwd}/bin/bacula-sd.conf ${cwd}/tmp/1 sed -f ${outf} ${cwd}/tmp/1 >${cwd}/bin/bacula-sd.conf -echo " " -echo " " -echo " === Starting Scratch Pool Test at `date +%R:%S` ===" -echo " === Starting Scratch Pool Test at `date +%R:%S` ===" >>working/log -echo " " +change_jobname NightlySave $JobName +start_test + # Write out bconsole commands -cat <tmp/bconcmds +cat <${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=Scratch drive=0 label storage=DDS-4 volume=TestVolume002 slot=2 pool=Scratch drive=0 -update Volume=TestVolume001 MaxVolBytes=3000000 pool=Scratch drive=0 +update Volume=TestVolume001 MaxVolBytes=2000000 pool=Scratch drive=0 update Volume=TestVolume001 inchanger=no pool=Scratch drive=0 @#setdebug level=200 storage=DDS-4 llist volume=TestVolume001 -run job=NightlySave yes +llist volume=TestVolume002 +run job=$JobName yes wait messages list volumes llist volume=TestVolume001 -quit @# @# now do a restore @# -@$out tmp/log2.out +@$out ${cwd}/tmp/log2.out restore where=${cwd}/tmp/bacula-restores select all storage=DDS-4 done yes wait @@ -66,30 +63,10 @@ messages quit END_OF_DATA -if test "$debug" -eq 1 ; then - bin/bacula start - cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf -else - bin/bacula start 2>&1 >/dev/null - cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf 2>&1 >/dev/null -fi -exit -scripts/check_for_zombie_jobs storage=DDS-4 +run_bacula +check_for_zombie_jobs storage=DDS-4 +stop_bacula -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 -r build tmp/bacula-restores${cwd}/build 2>&1 >/dev/null -if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then - echo " " - echo " " - echo " !!!!! Scratch Pool Test Bacula source failed!!! !!!!! " - echo " !!!!! Scratch Pool Test failed!!! !!!!! " >>test.out - echo " " -else - echo " ===== Scratch Pool Test Bacula source OK ===== " - echo " ===== Scratch Pool Test OK ===== " >>test.out -# scripts/cleanup -fi +check_two_logs +check_restore_diff +end_test