]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
regress: Add sharepoint regress tests
authorNorbert Bizet <norbert.bizet@baculasystems.com>
Thu, 22 Jul 2021 16:51:04 +0000 (12:51 -0400)
committerEric Bollengier <eric@baculasystems.com>
Thu, 24 Mar 2022 08:03:03 +0000 (09:03 +0100)
regress/scripts/create_sed
regress/scripts/win32-bacula-dir.conf.in [new file with mode: 0644]

index fef953c4b94f1ebfc5d67a3d3edcd5369b34cbf7..901fd785dd895b236d7777f4009259709bba3722 100755 (executable)
@@ -89,6 +89,10 @@ echo "s%@win32_file@%${WIN32_FILE}%g" >>${out}
 echo "s%@win32_wsep_file@%${win32_wsep_file}%g" >>${out}
 echo "s%@win32_port@%${WIN32_PORT}%g" >>${out}
 echo "s%@win32_password@%${WIN32_PASSWORD}%g" >>${out}
+echo "s%@win32_hv_vm@%${WIN32_HV_VM}%g" >>${out}
+echo "s%@win32_hv_working_dir@%${WIN32_HV_WORKING_DIR}%g" >>${out}
+echo "s%@win32_sp_site@%${WIN32_SP_SITE}%g" >>${out}
+echo "s%@win32_sp_working_dir@%${WIN32_SP_WORKING_DIR}%g" >>${out}
 echo "s%@db_name@%${db_name}%g" >>${out}
 echo "s%@db_user@%${db_user}%g" >>${out}
 echo "s%@db_password@%${db_password}%g" >>${out}
diff --git a/regress/scripts/win32-bacula-dir.conf.in b/regress/scripts/win32-bacula-dir.conf.in
new file mode 100644 (file)
index 0000000..b52bde9
--- /dev/null
@@ -0,0 +1,1083 @@
+#
+# Default Bacula Director Configuration file
+#
+#  The only thing that MUST be changed is to add one or more
+#   file or directory names in the Include directive of the
+#   FileSet resource.
+#
+#
+#
+
+Director {                            # define myself
+  Name = @hostname@-dir
+  DIRPort = @dirport@                # where we listen for UA connections
+  QueryFile = "@scriptdir@/query.sql"
+  WorkingDirectory = "@working_dir@"
+  PidDirectory = "@piddir@"
+  Maximum Concurrent Jobs = 4
+  Password = "pNvX1WiXnwv2C/F7E52LGvw6rKjbbPvu2kyuPa9pVaL3"
+  Messages = Daemon
+}
+
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "NightlySave"
+  Type = Backup
+  Level = Full
+  Client = @win32_client@
+  FileSet = "Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+Job {
+  Name = "VerifyVolume"
+  Type = Verify
+  Level = VolumeToCatalog
+  Client = @win32_client@
+  FileSet = "Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "DeltaJob"
+  Type = Backup
+  Client = @win32_client@
+  FileSet = "Delta"
+  Accurate = yes
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+}
+
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "NetAppHFCJob"
+  Type = Backup
+  Client = @win32_client@
+  FileSet = "NetAppHFC"
+  Accurate = no
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+}
+
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "LZOJob"
+  Type = Backup
+  Client = @win32_client@
+  FileSet = "LZO"
+  Accurate = yes
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+}
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "MSSQLDeltaJob"
+  Type = Backup
+  Client = @win32_client@
+  FileSet = "MSSQL"
+  Accurate = yes
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+}
+
+#
+# Define the main nightly save backup job
+#   By default, this job will back up to disk in @tmpdir@
+Job {
+  Name = "SystemstateJob"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "SystemState Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+}
+
+Job {
+  Name = "plugin-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Plugin Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+Job {
+  Name = "mssqlvdi"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "MSSQLVDI"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+Job {
+  Name = "winbmr-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "FullC"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+# ClientRunBeforeJob = "c:/bacula/rescue/winbmr.exe %l"
+  SpoolData = no
+}
+
+
+Job {
+  Name = "alldrives-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Plugin Alldrives"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+  RescheduleIncompleteJobs = no
+}
+
+Job {
+  Name = "alldrives-exclude-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Plugin Alldrives exclude"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+Job {
+  Name = "cdp-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Plugin CDP"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+  RescheduleIncompleteJobs = no
+}
+
+Job {
+  Name = "pg-test"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "PG Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = no
+}
+
+Job {
+  Name = "AccurateJob"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Accurate = yes
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = yes
+}
+
+Job {
+  Name = "RunScript"
+  Type = Backup
+  Level = Incremental
+  Client = @win32_client@
+  FileSet = "Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Maximum Concurrent Jobs = 4
+  SpoolData = yes
+
+  RunScript {
+   Command = "@win32_wsep_file@\\weird_runscript\\test.bat"               # ok  | ok  | ok
+   Command = "@win32_file@/weird_runscript/test.bat"                  # ok  | ok  | ok
+   Command = "\"@win32_file@/weird_runscript/dir space/test.bat\""    # ok  | ok  | ok
+   Command = "\"@win32_file@/weird_runscript/dir space/test2 space.bat\"" # ok|ok|ok
+   Command = "@win32_file@/weird_runscript/testé.bat"                 # ok  | ok  | ok
+   Command = "@win32_wsep_file@\\weird_runscript\\testé.bat"              # ok  | ok  | ok
+   Command = "\"@win32_wsep_file@\\weird_runscript\\test space.bat\""     # ok  | ok  | ok
+   RunsWhen = AfterVSS
+   FailJobOnError = no
+ }    
+}
+
+Job {
+  Name = "HyperVBackup"
+  Type = Backup
+  Client=@win32_client@ 
+  FileSet="HyperVFileSet"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/HyperVBackup.bsr"
+}
+
+# Standard Restore template, to be changed by Console program
+Job {
+  Name = "RestoreFiles"
+  Type = Restore
+  Client = @win32_client@
+  FileSet="Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Where = @tmpdir@/bacula-restores
+}
+
+Job {
+  Name = "VerifyData"
+  Type = Verify
+  Level = Data
+  Client=@win32_client@ 
+  FileSet="Full Set"
+  Storage = File
+  Messages = Standard
+  Pool = Default
+  Write Bootstrap = "@working_dir@/NightlySave.bsr"
+  Max Run Time = 30min
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "Full Set"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no  
+#      compression=GZIP
+     }
+     File = "@win32_file@"
+  }
+}
+
+
+# List of files to be backed up
+FileSet {
+  Name = "FS5"
+  Enable VSS = yes
+  Include {
+     Options {
+        signature=MD5;
+     }
+     File = "@win32_file@"
+  }
+  Include {
+     Options {
+        signature=MD5; compression = GZIP
+     }
+     File = "@win32_file@"
+  }
+  Include {
+     Options {
+        signature=MD5; compression = LZO
+     }
+     File = "@win32_file@"
+  }
+  Include {
+     Options {
+        signature=MD5; compression = LZO; sparse=yes; portable=yes
+     }
+     File = "@win32_file@"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "FS1"
+  Enable VSS = yes
+  Include {
+     Options {
+        signature=MD5;
+     }
+     File = "@win32_file@"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "FS2"
+  Enable VSS = yes
+  Include {
+     Options {
+        signature=MD5;
+        compression = GZIP
+     }
+     File = "@win32_file@"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "FS3"
+  Enable VSS = yes
+  Include {
+     Options {
+        signature=MD5;
+        compression = LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+
+
+# List of files to be backed up
+FileSet {
+  Name = "FullRoot"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5
+        compression=LZO
+        Ignore Case = yes
+        wildfile = "*.conf"
+     }
+     Options { 
+        regex = ".*"
+        exclude = yes
+     }
+     File = /
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "FullC"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5;
+        compression=LZO
+     }
+     Plugin = "winbmr"
+  }
+}
+
+FileSet {
+  Name = "PG Set"
+  Enable VSS = no
+  Include {
+     Options {
+        signature = MD5
+     }
+     Plugin="postgresql: bin_dir=\"c:/progra~1/postgr~1/9.1/bin\" service=main"
+  }
+}
+
+FileSet {
+  Name = "PG Set2"
+  Enable VSS = no
+  Include {
+     Options {
+        signature = MD5
+     }
+     Plugin="postgresql: bin_dir=\"c:/progra~1/postgr~1/9.1/bin\" service=main"
+  }
+}
+
+FileSet {
+  Name = "LZO"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no
+        compression=LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+FileSet {
+  Name = "NetAppHFC"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "netapp-hfc: host=netapp user=root password=root mount_base=c:/mnt volume=vol1"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-AllInstances"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: all_instances"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-SkipRO"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: skipreadonly"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-notfound"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: database=agreatdatabase abort_on_error"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-layoutdb"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: dblayout"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-multi"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: database=master"
+     Plugin = "mssql: database=msdb"
+     Plugin = "mssql: database=model"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-test"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: authtype=server user=sa passfile=\"c:/program files/bacula/password\" database=master"
+     Plugin = "mssql: database=model"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-CopyOnly"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: copyonly"
+  }
+}
+
+FileSet {
+  Name = "MSSQLVDI-checksum"
+  Enable VSS = no
+  Include {
+     Options { signature = md5 }
+     Plugin = "mssql: checksum=yes"
+  }
+}
+
+FileSet {
+  Name = "MSSQL"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=yes  
+        Plugin = delta
+        accurate = A
+        Ignore Case = yes
+        wildfile = "*.mdf"
+        wildfile = "*.ldf"
+     }
+     Options { 
+        regexfile = ".*"
+        exclude = yes
+     }
+     File = "C:/Program Files/Microsoft SQL Server"
+  }
+  Include {
+     Options { 
+        #accurate = mcs
+        signature=md5; portable=no
+        Ignore Case = yes
+        wildfile = "*.mdf"
+        wildfile = "*.ldf"
+        Exclude = yes
+     }
+     File = "C:/Program Files/Microsoft SQL Server"
+  }
+}
+
+FileSet {
+  Name = "Delta"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no
+        #disabled: compression = LZO
+        Plugin = "delta: min_size=1"
+     }
+     File = "<@working_dir@/file-list"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "SystemState Set"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no  
+#      compression=GZIP
+     }
+     File = "@win32_file@"
+     Plugin = "vss:/@SYSTEMSTATE/"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "Plugin Set"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no
+#      compression=GZIP
+     }
+     File = "@win32_file@"
+     Plugin = "systemstate:/@SYSTEMSTATE/"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "Plugin Alldrives exclude"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no  
+#      compression=GZIP
+     }
+     Plugin = "alldrives:exclude=c"
+     File = "@win32_file@"
+  }
+}
+
+# List of files to be backed up
+FileSet {
+  Name = "Plugin Alldrives"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5; portable=no  
+#      compression=GZIP
+       Ignore Case = yes
+       WildFile = "*.conf"
+     }
+     Options {
+       Exclude = yes
+       WildFile = "*.*"
+     }
+     Plugin = "alldrives"
+  }
+}
+
+FileSet {
+  Name = "MountPointVSSAlldrivesWithSubVolumes"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=no
+     }
+     Plugin = "alldrives"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointAlldrivesWithSubVolumes"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=no
+     }
+     Plugin = "alldrives"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointAlldrives"
+  Enable VSS = yes
+  Include {
+     Plugin = "alldrives"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointVSSAlldrives"
+  Enable VSS = yes
+  Include {
+     Plugin = "alldrives"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointVSSAllWithSubVolumes"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=no
+     }
+     File = "/"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointVSSAll"
+  Enable VSS = yes
+  Include {
+     File = "/"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointAllWithSubVolumes"
+  Enable VSS = no
+  Include {
+     Options {
+       OneFs=no
+     }
+     File = "/"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+FileSet {
+  Name = "MountPointAll"
+  Enable VSS = no
+  Include {
+     File = "/"
+  }
+  Exclude {
+   File = "*/System Volume Information"
+   File = "C:/Windows"
+   File = "C:/Program Files*"
+  }
+}
+
+# List of 8 FileSet to test mountpoints, mixint 3 differentent options
+# V for Enable Vss=Yes, O for OneFs=Yes and F for File=@win32_file@\vhd1
+FileSet {
+  Name = "MountPointVO_"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=yes
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+FileSet {
+  Name = "MountPointVOF"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=yes
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+     File = "@win32_file@/mount_point/vhd1"
+  }
+}
+
+FileSet {
+  Name = "MountPointV__"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=no
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+FileSet {
+  Name = "MountPointV_F"
+  Enable VSS = yes
+  Include {
+     Options {
+       OneFs=no
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+     File = "@win32_file@/mount_point/vhd1"
+  }
+}
+
+FileSet {
+  Name = "MountPoint_O_"
+  Enable VSS = no
+  Include {
+     Options {
+       OneFs=yes
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+FileSet {
+  Name = "MountPoint_OF"
+  Enable VSS = no
+  Include {
+     Options {
+       OneFs=yes
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+     File = "@win32_file@/mount_point/vhd1"
+  }
+}
+
+FileSet {
+  Name = "MountPoint___"
+  Enable VSS = no
+  Include {
+     Options {
+       OneFs=no
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+  }
+}
+
+FileSet {
+  Name = "MountPoint__F"
+  Enable VSS = no
+  Include {
+     Options {
+       OneFs=no
+       signature=MD5
+       portable=no
+       Exclude=yes
+       WildDir="*/System Volume Information"
+#      compression=LZO
+     }
+     File = "@win32_file@"
+     File = "@win32_file@/mount_point/vhd1"
+  }
+}
+
+FileSet {
+  Name = "Plugin CDP"
+  Enable VSS = yes
+  Include { 
+     Options { 
+        signature=MD5
+     }
+
+     Plugin = "cdp: userHome=@win32_file@/cdp_plugin_test"
+  }
+}
+
+FileSet {
+  Name = "HyperVFileSet"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "hv: include=\"@win32_hv_vm@\" tmp_dir=\"@win32_hv_working_dir@\""
+  }
+}
+
+FileSet {
+  Name = "SharePointFileSet"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "sp: include=\"@win32_sp_site@\" tmp_dir=\"@win32_sp_working_dir@\""
+  }
+}
+
+FileSet {
+  Name = "HyperVFileSmall"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "hv: include=\"*small*\" tmp_dir=\"@win32_hv_working_dir@\" pre_backup_action=Stop post_backup_action=Restart"
+  }
+}
+
+FileSet {
+  Name = "HyperVFileLinux"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "hv: include=\"*Linux*\" tmp_dir=\"@win32_hv_working_dir@\""
+  }
+}
+
+FileSet {
+  Name = "HyperVFileTc"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "hv: include=\"*tc*\" tmp_dir=\"@win32_hv_working_dir@\""
+  }
+}
+
+FileSet {
+  Name = "HyperVFileLubuntu"
+  Enable VSS = no
+  Include { 
+     Options { 
+        signature=MD5
+     }
+     Plugin = "hv: include=\"*Lubuntu*\" tmp_dir=\"F:/backup\""
+  }
+}
+
+#
+# When to do the backups, full backup on first sunday of the month,
+#  differential (i.e. incremental since full) every other sunday,
+#  and incremental backups other days
+Schedule {
+  Name = "WeeklyCycle"
+  Run = Full 1st sun at 1:05
+  Run = Differential 2nd-5th sun at 1:05
+  Run = Incremental mon-sat at 1:05
+}
+
+# Client (File Services) to backup
+Client {
+  Name = @win32_client@
+  Address = @win32_addr@
+  FDPort = @win32_port@
+  Catalog = MyCatalog
+  Password = "@win32_password@"
+  File Retention = 30d                # 30 days
+  Job Retention = 180d                # six months
+  AutoPrune = yes                     # Prune expired Jobs/Files
+  Maximum Concurrent Jobs = 4
+}
+
+Client {
+  Name = @hostname@-fd
+  Address = @hostname@
+  FDPort = @fdport@
+  Catalog = MyCatalog
+  Password = "xevrjURYoCHhn26RaJoWbeWXEY/a3VqGKp/37tgWiuHc"          # password for FileDaemon
+  File Retention = 30d                # 30 days
+  Job Retention = 180d                # six months
+  AutoPrune = yes                     # Prune expired Jobs/Files
+  Maximum Concurrent Jobs = 10
+}
+
+# Definition of File storage device
+Storage {
+  Name = File
+  Address = @win32_store_addr@       # N.B. Use a fully qualified name here
+  SDPort = @sdport@
+  Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9"          # password for Storage daemon
+  Device = FileStorage               # must be same as Device in Storage daemon
+  Media Type = File                  # must be same as MediaType in Storage daemon
+#  AutoChanger = yes
+  Maximum Concurrent Jobs = 4
+}
+
+
+# Generic catalog service
+Catalog {
+  Name = MyCatalog
+  @libdbi@
+  dbname = @db_name@; user = @db_user@; password = "@db_password@"
+}
+
+# Reasonable message delivery -- send most everything to email address
+#  and to the console
+Messages {
+  Name = Standard
+  mailcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression\) %r\" -s \"Regression: %t %e of %c %l\" %r"
+# operatorcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression\) %r\" -s \"Regression: Intervention needed for %j\" %r"
+# MailOnError = @job_email@ = all, !terminate
+# operator = @job_email@ = mount
+  console = all, !skipped, !terminate, !restored
+#
+# WARNING! the following will create a file that you must cycle from
+#          time to time as it will grow indefinitely. However, it will
+#          also keep all your messages if the scroll off the console.
+#
+  append = "@working_dir@/log" = all, !skipped
+  catalog = all, !skipped
+}
+
+#
+# Message delivery for daemon messages (no job).
+Messages {
+  Name = Daemon
+  mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula regression\) %r\" -s \"Regression daemon message\" %r"
+# mail = @job_email@ = all, !skipped            
+  console = all, !skipped, !saved
+  append = "@working_dir@/log" = all, !skipped
+  catalog = all, !skipped
+}
+
+    
+# Default pool definition
+Pool {
+  Name = Default
+  Pool Type = Backup
+  Recycle = yes                       # Bacula can automatically recycle Volumes
+  AutoPrune = yes                     # Prune expired volumes
+  Volume Retention = 365d             # one year
+}