]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/2media-virtual-test
32ea1a7961cfcb80834e8fa7ea44e81c3fe05b31
[bacula/bacula] / regress / tests / 2media-virtual-test
1 #!/bin/sh
2 #
3 # Test running a Virtual disk changer with two Media Types
4 #   and two different Archive directories
5 #   This tests bug #8033 where a Volume is not truncated,
6 #   but a second Volume of the same name is made in the wrong
7 #   directory.
8 #
9 TestName="2media-virtual-test"
10 JobName=Virtual
11 . scripts/functions
12
13 ${rscripts}/cleanup
14 cp -f ${rscripts}/bacula-dir-2media-virtual.conf ${conf}/bacula-dir.conf
15 cp -f ${rscripts}/bacula-sd-2media-virtual.conf ${conf}/bacula-sd.conf
16 cp -f ${rscripts}/test-bacula-fd.conf ${conf}/bacula-fd.conf
17 rm -rf ${tmp}/disk ${tmp}/disk1
18 mkdir -p ${tmp}/disk ${tmp}/disk1
19
20 disable_plugins
21 echo "$cwd/build/src/dird" >${cwd}/tmp/file-list
22
23 start_test
24
25 cat <<END_OF_DATA >${tmp}/bconcmds
26 @output /dev/null
27 messages
28 @$out ${tmp}/log1.out
29 @#setdebug level=15 storage=Virtual
30 @#setdebug level=200 client
31 @#setdebug level=100 director
32 label storage=Virtual pool=Default volume=TestVolume001 drive=0 slot=0
33 label Storage=vDrive-3 pool=Default volume=TestVolume002 drive=2 slot=0
34 run job=$JobName level=Full storage=Virtual yes
35 wait
36 update volume=TestVolume001 volstatus=Used actiononpurge=truncate
37 run job=$JobName level=Full storage=vDrive-3 yes
38 wait
39 messages
40 list volumes
41 llist volume=TestVolume001
42 purge volume=TestVolume001
43 update volume=TestVolume002 volstatus=Used actiononpurge=truncate
44 purge volume=TestVolume002
45 purge volume action=truncate pool=Default storage=Virtual drive=0
46 purge volume action=truncate pool=Default storage=Virtual drive=2
47 list volumes
48 quit
49 END_OF_DATA
50
51 run_bacula
52 check_for_zombie_jobs storage=Virtual
53 stop_bacula
54
55 # No TestVolume002 should be in ${tmp}/disk
56 ls -l ${tmp}/disk | grep -q TestVolume002
57 if [ $? = 0 ]; then
58    print_debug "ERROR: Volume TestVolume2 incorrectly created in ${tmp}/disk"
59    dstat=1
60 fi
61
62 if [ x$REGRESS_DEBUG != x ] ; then
63    ls -l ${tmp}/disk
64    ls -l ${tmp}/disk1
65 fi
66
67 exit
68
69 #check_two_logs
70 #check_restore_diff
71 end_test