]> git.sur5r.net Git - bacula/bacula/blob - regress/tests/recycle-test
Update
[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" >/tmp/file-list
15
16 change_jobname NightlySave $JobName
17 start_test
18
19 cat <<END_OF_DATA >tmp/bconcmds
20 @output /dev/null
21 messages
22 @$out tmp/log1.out
23 label storage=File1 volume=TestVolume001
24 label storage=File1 volume=TestVolume002
25 label storage=File1 volume=TestVolume003
26 update Volume=TestVolume001 volretention=10s
27 update Volume=TestVolume001 maxvoljobs=1
28 update Volume=TestVolume002 volretention=10s
29 update Volume=TestVolume002 maxvoljobs=1
30 update Volume=TestVolume003 volretention=10s
31 update Volume=TestVolume003 maxvoljobs=1
32 list volumes
33 run job=$JobName storage=File1 level=full yes
34 wait
35 messages
36 list volumes
37 run job=$JobName storage=File1 level=full yes
38 wait
39 messages
40 list volumes
41 run job=$JobName storage=File1 level=full yes
42 wait
43 messages
44 list volumes
45 @sleep 10
46 run job=$JobName storage=File1 level=full yes
47 wait
48 messages
49 list volumes
50 run job=$JobName storage=File1 level=full yes
51 wait
52 messages
53 list volumes
54 run job=$JobName storage=File1 level=full yes
55 wait
56 messages
57 list volumes
58 @# 
59 @# now do a restore
60 @#
61 @$out tmp/log2.out
62 restore where=${cwd}/tmp/bacula-restores select storage=File1
63 unmark *
64 mark *
65 done
66 yes
67 wait
68 messages
69 @output
70 quit
71 END_OF_DATA
72
73 run_bacula
74 check_for_zombie_jobs storage=File1
75 stop_bacula
76
77 check_two_logs
78 check_restore_diff
79 end_test