From f8bde815b4da2548d44340baabae882e67eac480 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sat, 8 Jul 2006 06:46:18 +0000 Subject: [PATCH] Implement migrate volume test git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@3127 91ce42f0-d328-0410-95d8-f526ca767f89 --- regress/scripts/bacula-dir-migration.conf.in | 18 ++++- regress/tests/fixed-block-size-tape | 2 +- regress/tests/migration-job-test | 3 + regress/tests/migration-volume-test | 71 ++++++++++++++++++++ 4 files changed, 92 insertions(+), 2 deletions(-) create mode 100755 regress/tests/migration-volume-test diff --git a/regress/scripts/bacula-dir-migration.conf.in b/regress/scripts/bacula-dir-migration.conf.in index 088ad3e8dc..f14cf8a226 100644 --- a/regress/scripts/bacula-dir-migration.conf.in +++ b/regress/scripts/bacula-dir-migration.conf.in @@ -48,13 +48,29 @@ Job { 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" diff --git a/regress/tests/fixed-block-size-tape b/regress/tests/fixed-block-size-tape index e57d6ba1c1..10de2c45e5 100755 --- a/regress/tests/fixed-block-size-tape +++ b/regress/tests/fixed-block-size-tape @@ -7,7 +7,7 @@ TestName="fixed-block-size-tape" JobName=fixedblocksize . scripts/functions -set_debug 1 +set_debug 0 copy_tape_confs diff --git a/regress/tests/migration-job-test b/regress/tests/migration-job-test index dc8dff7a5a..bb88142221 100755 --- a/regress/tests/migration-job-test +++ b/regress/tests/migration-job-test @@ -35,9 +35,12 @@ 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 list volumes +@# should migrate two jobs run job=migrate yes list volumes wait diff --git a/regress/tests/migration-volume-test b/regress/tests/migration-volume-test new file mode 100755 index 0000000000..81d7a339e5 --- /dev/null +++ b/regress/tests/migration-volume-test @@ -0,0 +1,71 @@ +#!/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 <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 -- 2.39.5