]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/recycle-test
Up max concurrent jobs
[bacula/bacula] / regress / tests / recycle-test
1 #!/bin/sh
2 #
3 # Run a simple backup of the Bacula build directory but 
4 #   create three volumes and do six backups causing the
5 #   volumes to be recycled, and cycling through the volumes
6 #   twice. Tests maxvoljobs and volretention.
7 #
8 TestName="recycle-test"
9 JobName=Recycle
10 . scripts/functions
11
12 scripts/cleanup
13 scripts/copy-test-confs
14 echo "${cwd}/build" >${cwd}/tmp/file-list
15
16 change_jobname NightlySave $JobName
17 start_test
18
19 cat <<END_OF_DATA >${cwd}/tmp/bconcmds
20 @output /dev/null
21 messages
22 @$out ${cwd}/tmp/log1.out
23 label storage=File1 volume=TestVolume001
24 label storage=File1 volume=TestVolume002
25 label storage=File1 volume=TestVolume003
26 label storage=File1 volume=TestVolume004
27 @# Note, this is going to fail if the pruning gets
28 @#  to tight because the saved volume is too large.
29 @#  In that case, either add another volume, or
30 @#  increase the volume capacity a bit.
31 update Volume=TestVolume001 volretention=10s
32 update Volume=TestVolume001 maxvolbytes=200000000
33 update Volume=TestVolume002 volretention=10s
34 update Volume=TestVolume002 maxvolbytes=200000000
35 update Volume=TestVolume003 volretention=10s
36 update Volume=TestVolume003 maxvolbytes=200000000
37 update Volume=TestVolume004 volretention=10s
38 update Volume=TestVolume004 maxvolbytes=200000000
39 list volumes
40 setdebug level=250 storage=File1
41 setdebug level=250 dir
42 run job=$JobName storage=File1 level=full yes
43 run job=$JobName storage=File1 level=full yes
44 run job=$JobName storage=File1 level=full yes
45 wait
46 messages
47 list volumes
48 @sleep 11 
49 run job=$JobName storage=File1 level=full yes
50 run job=$JobName storage=File1 level=full yes
51 run job=$JobName storage=File1 level=full yes
52 wait
53 messages
54 list volumes
55 @sleep 11
56 run job=$JobName storage=File1 level=full yes
57 run job=$JobName storage=File1 level=full yes
58 run job=$JobName storage=File1 level=full yes
59 wait
60 messages
61 list volumes
62 @sleep 11
63 run job=$JobName storage=File1 level=full yes
64 run job=$JobName storage=File1 level=full yes
65 run job=$JobName storage=File1 level=full yes
66 wait
67 messages
68 list volumes
69 @sleep 11
70 run job=$JobName storage=File1 level=full yes
71 run job=$JobName storage=File1 level=full yes
72 run job=$JobName storage=File1 level=full yes
73 wait
74 messages
75 list volumes
76 @# 
77 @# now do a restore
78 @#
79 @$out ${cwd}/tmp/log2.out
80 restore where=${cwd}/tmp/bacula-restores select storage=File1
81 unmark *
82 mark *
83 done
84 yes
85 wait
86 messages
87 @output
88 quit
89 END_OF_DATA
90
91 run_bacula
92 check_for_zombie_jobs storage=File1
93 stop_bacula
94
95 check_two_logs
96 check_restore_diff
97 end_test