28b8b3bb44
Use proper response parsing instead of raise_for
2024-10-11 10:32:15 -04:00
214e7f835a
Properly preserve state on promotion
...
Ensure if the state is start, stop, or disable, that state is preserved;
if it's anything else, the remote side will be started.
2024-10-10 01:21:05 -04:00
c4763ac596
Fix invalid responses during promote
2024-10-09 01:14:19 -04:00
ea5512e3d8
Only shut down VM if it is running
2024-10-09 01:10:42 -04:00
6d31bf439e
Update error text
2024-10-09 01:00:51 -04:00
c714093a2e
Ensure VM start is forced
2024-10-09 00:58:43 -04:00
04a09b9269
Fix invalid data in state change
2024-10-09 00:55:13 -04:00
3ede0c7d38
Name mirror snapshots like autobackup snapshots
2024-10-09 00:49:22 -04:00
ab9390fdb8
Fix another bad stage counting instance
2024-10-09 00:44:20 -04:00
1c83584788
Set correct verbage
2024-10-09 00:38:59 -04:00
7f3ab4e119
Fix stage counting in tasks
2024-10-09 00:37:13 -04:00
16eb09dc22
Fix ordering bug with vm_detail
2024-10-09 00:33:00 -04:00
7ba75adef4
Fix bug if destination is missing
2024-10-09 00:27:42 -04:00
1d90b066bc
Add guard rails against manipulating mirrors
...
Snapshot mirrors should normally be promoted using "mirror promote", and
not started manually. This adds guard rails against that to the "start",
"stop", and "disable" state commands to prevent changing mirror states
without an explicit "--force" option.
2024-10-08 23:51:48 -04:00
3ea7421f09
Implement friendlier VM mirror commands
...
Adds two helper commands which automate sending and promoting VM
snapshots as "vm mirror" commands.
"vm mirror create" replicates the functionality of "snapshot create" and
"snapshot send", performing both in one single task using an
autogenerated dated snapshot name for automatic cross-cluster
replication.
"vm mirror promote" replicates the functionality of "vm shutdown",
"snapshot create", "snapshot send", "vm start" (remote), and,
optionally, "vm remove", performing in one single task an entire
cross-cluster VM move with or without retaining the copy on the local
cluster (if retained, the local copy becomes a snapshot mirror of the
remote, flipping their statuses).
2024-10-08 23:51:39 -04:00
235299942a
Add volume resize if changed
2024-09-30 20:51:59 -04:00
75eac356d5
Increase send blocksize and add total speed
...
It's much faster and seems to cause no issues.
2024-09-30 20:11:12 -04:00
fb8561cc5d
Actually fix incremental sending
2024-09-30 17:00:18 -04:00
5f7aa0b2d6
Improve incremental send speed
2024-09-30 04:15:17 -04:00
7785166a7e
Finish working implementation of send/receive
...
Required some significant refactoring due to issues with the diff send,
but it works.
2024-09-30 02:53:23 -04:00
34f0a2f388
Add mostly complete implementation of VM send
2024-09-29 01:31:13 -04:00
f462ebbc6b
Add VM snapshot send (initial)
2024-09-28 10:49:35 -04:00
1cbadb1172
Add "mirror" VM state
2024-09-28 02:01:56 -04:00
35fe16ce75
Revert "Adjust stage naming to reflect autobackup stages"
...
This reverts commit c1f320ede29f6fc7891137ec39830e6443be5156.
2024-08-25 15:58:25 -04:00
c1f320ede2
Adjust stage naming to reflect autobackup stages
2024-08-25 15:55:16 -04:00
c0686fc5c7
Remove stage overrides
...
These aren't needed after pending refactor.
2024-08-25 15:17:46 -04:00
4b37c4fea3
Fix assignment bug
2024-08-25 14:10:59 -04:00
f6c009beac
Allow overriding stages in some commands
...
This allows them to be called by autobackup commands while still
preserving the current Celery report flow.
2024-08-23 11:21:02 -04:00
fc89f4f2f5
Fix error message contents
2024-08-23 10:23:51 -04:00
565011b277
Set snapshot name before start
2024-08-20 23:01:52 -04:00
0bf9cc6b06
Improve stage handling
...
Run start() at the beginning, and leverage the new tweaks to the CLI to
update the total steps later. Allows errors to be handled gracefully
2024-08-20 17:50:27 -04:00
f2dfada73e
Improve return handling for snapshot tasks
2024-08-20 17:40:44 -04:00
9b3075be18
Add UUID check and fix wording
...
Don't suggest renaming any more as it's not enough.
2024-08-20 17:05:27 -04:00
9a661d0173
Convert VM snapshots to worker tasks
...
Improves manageability and offloads these from the API context.
2024-08-20 16:50:41 -04:00
4a0680b27f
Fix issues with snapshot imports
2024-08-20 13:59:05 -04:00
f42a1bad0e
Allow passing zk_only into VM snapshot creation
2024-08-20 12:57:53 -04:00
8937ddf331
Simplify VM rename to preserve data
...
A rename is simply a change to two values, so instead of undefining and
re-defining the VM, just edit those two fields. This ensures things like
snapshots are preserved automatically.
2024-08-20 11:37:28 -04:00
7cc354466f
Finish implementing snapshot import
2024-08-20 11:25:09 -04:00
0a8bad3418
Add VM snapshot import
2024-08-20 10:53:56 -04:00
f10d32987b
Fix up comments
2024-08-20 10:37:58 -04:00
d060787503
Add initial implementation of snapshot export
2024-08-19 18:46:07 -04:00
33f905459a
Implement VM rollback
...
Closes #184
2024-08-16 10:47:18 -04:00
359191c83f
Ensure snapshot name does not already exist
2024-08-16 10:46:25 -04:00
3d0d5e63f6
Make default snap name just the datestring
2024-08-16 10:46:25 -04:00
e6bfbb6d45
Actually fix incorrect naming bug
2024-08-16 10:46:25 -04:00
fbd5b3cca3
Remove is_backup flag for snapshots
...
This won't be needed for anything.
2024-08-16 10:46:25 -04:00
2b1082590e
Fix bug in snapshot removal
2024-08-16 10:46:25 -04:00
6fc7f45027
Add snapshot lists and timestamp
...
Adds snapshots to the list of data in VM objects
2024-08-16 10:46:25 -04:00
0c240a5129
Add VM snapshot removal
2024-08-16 10:46:25 -04:00
553c1e670e
Add VM snapshots functionality
...
Adds the ability to create snapshots of an entire VM, including all its
RBD disks and the VM XML config, though not any PVC metadata.
2024-08-16 10:46:25 -04:00