starting tests on production
This commit is contained in:
@ -1344,10 +1344,24 @@ class ZfsAutobackup:
|
|||||||
# target_node.run(["/root/outputtest"], readonly=True)
|
# target_node.run(["/root/outputtest"], readonly=True)
|
||||||
|
|
||||||
self.set_title("Selecting")
|
self.set_title("Selecting")
|
||||||
source_datasets=source_node.selected_datasets
|
selected_source_datasets=source_node.selected_datasets
|
||||||
if not source_datasets:
|
if not selected_source_datasets:
|
||||||
abort("No source filesystems selected, please do a 'zfs set autobackup:{0}=true' on {1}".format(self.args.backup_name, self.args.ssh_source))
|
abort("No source filesystems selected, please do a 'zfs set autobackup:{0}=true' on {1}".format(self.args.backup_name, self.args.ssh_source))
|
||||||
|
|
||||||
|
|
||||||
|
source_datasets=[]
|
||||||
|
|
||||||
|
#filter out already replicated stuff?
|
||||||
|
if not self.args.ignore_replicated:
|
||||||
|
source_datasets=selected_source_datasets
|
||||||
|
else:
|
||||||
|
for selected_source_dataset in selected_source_datasets:
|
||||||
|
if selected_source_dataset.is_changed():
|
||||||
|
source_datasets.append(selected_source_dataset)
|
||||||
|
else:
|
||||||
|
selected_source_dataset.verbose("Ignoring, already replicated")
|
||||||
|
|
||||||
|
|
||||||
if not self.args.no_snapshot:
|
if not self.args.no_snapshot:
|
||||||
self.set_title("Snapshotting")
|
self.set_title("Snapshotting")
|
||||||
source_node.consistent_snapshot(source_datasets, source_node.new_snapshotname(), allow_empty=self.args.allow_empty)
|
source_node.consistent_snapshot(source_datasets, source_node.new_snapshotname(), allow_empty=self.args.allow_empty)
|
||||||
@ -1374,18 +1388,15 @@ class ZfsAutobackup:
|
|||||||
for source_dataset in source_datasets:
|
for source_dataset in source_datasets:
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if self.args.ignore_replicated and not source_dataset.is_changed():
|
#determine corresponding target_dataset
|
||||||
source_dataset.verbose("Already replicated")
|
target_name=self.args.target_path + "/" + source_dataset.lstrip_path(self.args.strip_path)
|
||||||
else:
|
target_dataset=ZfsDataset(target_node, target_name)
|
||||||
#determine corresponding target_dataset
|
|
||||||
target_name=self.args.target_path + "/" + source_dataset.lstrip_path(self.args.strip_path)
|
|
||||||
target_dataset=ZfsDataset(target_node, target_name)
|
|
||||||
|
|
||||||
#ensure parents exists
|
#ensure parents exists
|
||||||
if not target_dataset.parent.exists:
|
if not target_dataset.parent.exists:
|
||||||
target_dataset.parent.create_filesystem(parents=True)
|
target_dataset.parent.create_filesystem(parents=True)
|
||||||
|
|
||||||
source_dataset.sync_snapshots(target_dataset, show_progress=self.args.progress, resume=self.args.resume, filter_properties=filter_properties, set_properties=set_properties, ignore_recv_exit_code=self.args.ignore_transfer_errors, source_holds= not self.args.no_holds, rollback=self.args.rollback)
|
source_dataset.sync_snapshots(target_dataset, show_progress=self.args.progress, resume=self.args.resume, filter_properties=filter_properties, set_properties=set_properties, ignore_recv_exit_code=self.args.ignore_transfer_errors, source_holds= not self.args.no_holds, rollback=self.args.rollback)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
source_dataset.error(str(e))
|
source_dataset.error(str(e))
|
||||||
if self.args.debug:
|
if self.args.debug:
|
||||||
|
|||||||
Reference in New Issue
Block a user