FileSet="Full Set"
Messages = Standard
Storage = DiskChanger
- Write Bootstrap = "@working_dir@/migrate.bsr"
+ Write Bootstrap = "@working_dir@/migratejob.bsr"
Pool = Default
Maximum Concurrent Jobs = 4
Selection Type = Job
Selection Pattern = ".*Save"
}
+Job {
+ Name = "migrate-volume"
+ Type = Migrate
+ Level = Full
+ Client=@hostname@-fd
+ FileSet="Full Set"
+ Messages = Standard
+ Storage = DiskChanger
+ Write Bootstrap = "@working_dir@/migratevol.bsr"
+ Pool = Default
+ Maximum Concurrent Jobs = 4
+ Selection Type = Volume
+ Selection Pattern = "File*"
+}
+
+
# Standard Restore template, to be changed by Console program
Job {
Name = "RestoreFiles"
label storage=DiskChanger volume=ChangerVolume001 slot=1 Pool=Full drive=0
label storage=DiskChanger volume=ChangerVolume002 slot=2 Pool=Full drive=0
list volumes
+@# run two jobs (both will be migrated)
+run job=$JobName yes
run job=$JobName yes
wait
list volumes
+@# should migrate two jobs
run job=migrate yes
list volumes
wait
--- /dev/null
+#!/bin/sh
+#
+# Run a simple backup of the Bacula build directory then migrate it
+# to another device.
+#
+# This script uses the virtual disk autochanger
+#
+TestName="migration-volume-test"
+JobName=MigrationVolSave
+. scripts/functions
+set_debug 1
+
+. config.out
+
+scripts/copy-migration-confs
+scripts/prepare-two-disks
+scripts/cleanup
+echo "${cwd}/build" >/tmp/file-list
+
+change_jobname NightlySave $JobName
+start_test
+
+#
+# Note, we first backup into Pool Default,
+# then Migrate into Pool Full.
+# Pool Default uses Storage=File
+# Pool Full uses Storage=DiskChanger
+
+# Write out bconsole commands
+cat <<END_OF_DATA >tmp/bconcmds
+@output
+messages
+@$out tmp/log1.out
+label storage=File volume=FileVolume001 Pool=Default
+label storage=DiskChanger volume=ChangerVolume001 slot=1 Pool=Full drive=0
+label storage=DiskChanger volume=ChangerVolume002 slot=2 Pool=Full drive=0
+list volumes
+@# run two jobs (both will be migrated)
+run job=$JobName yes
+run job=$JobName yes
+wait
+update volume=FileVolume001 VolStatus=Used
+list volumes
+@# should migrate two jobs
+run job=migrate-volume yes
+list volumes
+wait
+messages
+@#
+@# now do a restore
+@#
+@$out tmp/log2.out
+restore where=${cwd}/tmp/bacula-restores select storage=DiskChanger
+unmark *
+mark *
+done
+yes
+wait
+messages
+@output
+quit
+END_OF_DATA
+
+run_bacula
+check_for_zombie_jobs storage=File
+stop_bacula
+
+check_two_logs
+check_restore_diff
+exit
+end_test