]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/next-vol-test
ebl Add a test to test next_vol.c
[bacula/bacula] / regress / tests / next-vol-test
1 #!/bin/sh
2 #
3 # This script will test next vol algo with
4 # vtape
5 #
6
7 . scripts/functions
8
9 require_vtape
10
11 scripts/cleanup
12 scripts/copy-tape-confs
13 cp scripts/bacula-dir-vtape.conf bin/bacula-dir.conf
14 cp scripts/bacula-sd-vtape.conf bin/bacula-sd.conf
15
16 scripts/prepare-fake-autochanger
17
18 TestName="next-vol-test"
19 JobName=backup
20
21 start_test
22
23 cat <<EOF > ${cwd}/tmp/bconcmds
24 @out ${cwd}/tmp/log.out
25 label barcodes storage=LTO3 slots=48-59 drive=0 pool=Scratch
26 yes
27 update volume=vol59 pool=Test enabled=no
28 update volume=vol58 pool=Test volstatus=Recycle
29 purge  volume=vol57
30 update volume=vol56 pool=Test
31 update volume=vol55 pool=Test volstatus=Full volretention=15 
32 update volume=vol54 volstatus=Recycle
33 purge  volume=vol53
34 update volume=vol52 MaxVolJobs=1
35 update volume=vol51 inchanger=no volstatus=Recycle
36 purge  volume=vol50
37 update volume=vol50 inchanger=no
38 update volume=vol49 inchanger=no
39 update volume=vol48 inchanger=no pool=Test
40 update volume  AllFromPool=Test
41 sql
42 update Media SET VolJobs=1 WHERE VolumeName='vol52';
43
44 list volume
45 EOF
46
47 run_bacula
48
49 echo $PWD/build/po > tmp/file-list
50
51 cat <<EOF > ${cwd}/tmp/bconcmds
52 @out ${cwd}/tmp/log2.out
53 list volume
54 @# Must choose vol56
55 run level=full pool=Test NightlySave yes
56 wait
57 message
58 list volume
59 @# Must choose vol58
60 run level=full pool=Test NightlySave yes
61 wait
62 message
63 list volume
64 @# Must choose vol55
65 run level=full pool=Test NightlySave yes
66 wait
67 message
68 list volume
69 @# Must choose vol54
70 run level=full pool=Test NightlySave yes
71 wait
72 message
73 list volume
74 @# Must choose vol52 <--------- BUG vol50
75 run level=full pool=Test NightlySave yes
76 wait
77 message
78 list volume
79 @# Must choose vol53
80 run level=full pool=Test NightlySave yes
81 wait
82 message
83 list volume
84 @# Must choose vol57
85 run level=full pool=Test NightlySave yes
86 wait
87 message
88 list volume
89 restore fileset="Full Set" pool=Test where=${cwd}/tmp/bacula-restores select all done
90 yes
91 wait
92 messages
93 wait
94 messages
95 @# Must Wait
96 @#run level=full pool=Test NightlySave yes
97 @#wait
98 @#message
99 @#list volume
100 EOF
101
102 run_bconsole
103
104 check_for_zombie_jobs storage=LTO3
105 stop_bacula
106
107 cp tmp/log2.out tmp/log1.out
108 check_two_logs
109
110
111 awk '/Must choose/ { print $4 } '    tmp/log2.out > tmp/normal
112 awk '/Volume name.+:/ { print $3 } ' tmp/log2.out > tmp/real
113 diff tmp/normal tmp/real > /dev/null
114
115
116 export dstat=$?
117
118 end_test