Compare commits
2 Commits
b525bbe81d
...
109000c17c
Author | SHA1 | Date |
---|---|---|
Joshua Boniface | 109000c17c | |
Joshua Boniface | ba4349d289 |
|
@ -389,6 +389,7 @@ def worker_cluster_automirror(
|
||||||
continue
|
continue
|
||||||
|
|
||||||
remote_marked_for_deletion = dict()
|
remote_marked_for_deletion = dict()
|
||||||
|
all_results = list()
|
||||||
for destination in vm_destinations:
|
for destination in vm_destinations:
|
||||||
mirror_start = datetime.now()
|
mirror_start = datetime.now()
|
||||||
result, ret = run_vm_mirror(
|
result, ret = run_vm_mirror(
|
||||||
|
@ -401,6 +402,7 @@ def worker_cluster_automirror(
|
||||||
)
|
)
|
||||||
mirror_end = datetime.now()
|
mirror_end = datetime.now()
|
||||||
runtime_secs = (mirror_end - mirror_start).seconds
|
runtime_secs = (mirror_end - mirror_start).seconds
|
||||||
|
all_results.append(result)
|
||||||
if result:
|
if result:
|
||||||
remote_marked_for_deletion[destination] = ret
|
remote_marked_for_deletion[destination] = ret
|
||||||
|
|
||||||
|
@ -421,6 +423,15 @@ def worker_cluster_automirror(
|
||||||
"result_message": ret,
|
"result_message": ret,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# If all sends failed, remove the snapshot we created as it will never be needed or automatically cleaned up later
|
||||||
|
if all(not b for b in all_results):
|
||||||
|
vm.vm_worker_remove_snapshot(
|
||||||
|
zkhandler,
|
||||||
|
None,
|
||||||
|
vm_detail["name"],
|
||||||
|
snapshot_name,
|
||||||
|
)
|
||||||
|
|
||||||
# Find all local snapshots that were present in all remote snapshot deletions,
|
# Find all local snapshots that were present in all remote snapshot deletions,
|
||||||
# then remove them
|
# then remove them
|
||||||
# If one of the sends fails, this should result in nothing being removed
|
# If one of the sends fails, this should result in nothing being removed
|
||||||
|
|
|
@ -3446,9 +3446,9 @@ def vm_worker_send_snapshot(
|
||||||
new_tags = list()
|
new_tags = list()
|
||||||
for tag in vm_detail["tags"]:
|
for tag in vm_detail["tags"]:
|
||||||
tag_base = tag["name"].split(":")[0]
|
tag_base = tag["name"].split(":")[0]
|
||||||
if tag_base in [t for t in autobackup_config["backup_tags"]] or tag_base in [
|
if tag_base in [
|
||||||
t for t in automirror_config["mirror_tags"]
|
t for t in autobackup_config.get("backup_tags", [])
|
||||||
]:
|
] or tag_base in [t for t in automirror_config.get("mirror_tags", [])]:
|
||||||
continue
|
continue
|
||||||
new_tags.append(tag)
|
new_tags.append(tag)
|
||||||
vm_detail["tags"] = new_tags
|
vm_detail["tags"] = new_tags
|
||||||
|
|
Loading…
Reference in New Issue