Bug 1235630

Summary: [RFE] add a way to execute snapshot operations on multiple VMs at once
Product: [oVirt] ovirt-engine Reporter: Petr Spacek <pspacek>
Component: Frontend.UserPortalAssignee: Nobody <nobody>
Status: CLOSED DEFERRED QA Contact: Vitalii Yerys <vyerys>
Severity: low Docs Contact:
Priority: low    
Version: 3.5.0CC: bugs, lsurette, lsvaty, mavital, michal.skrivanek, mtessun, rbalakri, Rhev-m-bugs, srevivo, ykaul
Target Milestone: ---Keywords: FutureFeature
Target Release: ---Flags: ylavi: ovirt-future?
rule-engine: planning_ack?
rule-engine: devel_ack?
rule-engine: testing_ack?
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-07-06 15:09:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 999719    
Bug Blocks: 1213937    

Description Petr Spacek 2015-06-25 11:14:47 UTC
Description of problem:
Currently, there is no way to create a snapshot of multiple VMs at once or to restore it. User has to click to each VM and click through the same dialogs again and again and repeat the same request for every VM.

This is annoying and more importantly, very error prone. Failure to create snapshot of a VM in distributed system might have very serious consequences.

This bug is completary to bug 1051388.


Use case:
Snapshoting/restoring interconnected VMs which are running in a distributed system, e.g. FreeIPA/Identity Management VMs.


Proposal for user interface:
1. User selects multiple VMs from list.
2. Snapshot tab will show (or allow to select) only snapshots which are available (have common name or other identifier) across all selected VMs.
3a. 'Create' button will show dialog asking for a name as it does now. This name will be used for snapshots created on all VMs.
3b. 'Delete' and 'Preview' buttons will operate on snapshot selected from the list of snapshots. Step (2) above allows user to select only snapshots which are shared among all VMs.
3c. 'Commit' and 'Undo' buttons will apply the operation to all selected VMs. This should not require user to select snapshot.
3d. 'Clone' button should be grayed out if multiple VMs is selected.

Comment 1 Einav Cohen 2015-06-27 14:26:16 UTC
[marking 'virt' based on bug 1051388 but could be something else - not sure]

let's separate snapshot creation and the other snapshot operations:

- snapshot creation is available from the main VMs action panel (putting aside for a minute the fact that it is available also from the Snapshots sub tab). 
As Michal explain in bug 1051388, comment #2, actions that involve a dialog require more work in order to support them for multiple objects in parallel. 
The 'Create Snapshot' dialog is supposed to display all Disks of the VM (in order to choose which Disks will be included in the newly-created snapshot), so when handling multiple VMs in parallel, in gets more complicated. 

- the other snapshot operations are being done via the Snapshots sub-tab. 
Today, sub-tabs display information and allow actions only on a single item in the main-grid. In order to allow action-invocation on multiple items in the main grid from a sub-tab, we need the sub-tab to indicate that it pertains to multiple items and display information about multiple items. For consistency considerations, this needs to be applied across all of the GUI, not only the Snapshots sub-tab within the VMs main tab, which is a huge conceptual change 
(see bug 999719 and related bugs in the comments within that bug). 

So not a trivial change in any case. 

I recommend closing, or pushing to future and/or put as Depends On bug 999719 or one of its related bugs.

Comment 2 Petr Spacek 2015-06-29 08:21:47 UTC
For the record, I would really appreciate even the limited ability to create snapshot of multiple VMs including all their disks, e.g. bypassing the disk selection dialog.

Comment 3 Michal Skrivanek 2015-07-07 06:49:52 UTC
Snapshot freezes VM's drives for the duration of snapshot. Is it enough to do this still at per-VM basis or did you mean to freeze all drives from all VMs at once?

Comment 4 Petr Spacek 2015-07-08 07:11:22 UTC
Generally the time gap between snapshoting different VMs should be "small" but it does not need to happen in the same 'clock tick' (which is probably unachievable anyway).

I'm trying to solve the problem where user forgets to snapshot one of 10 VMs because he gets lots in all the dialogs and clicking.

Comment 5 Yaniv Kaul 2015-11-26 13:54:58 UTC
(In reply to Petr Spacek from comment #4)
> Generally the time gap between snapshoting different VMs should be "small"
> but it does not need to happen in the same 'clock tick' (which is probably
> unachievable anyway).
> 
> I'm trying to solve the problem where user forgets to snapshot one of 10 VMs
> because he gets lots in all the dialogs and clicking.

I'd be very surprised if this is done using the UI. You expect such periodic tasks to be done via the API.

Comment 6 Petr Spacek 2015-11-26 14:23:20 UTC
Yaniv, this is not made up. My team is using RHEV exactly for this purpose.

Comment 7 Martin Tessun 2018-07-06 15:09:01 UTC
I would expect to have these kind of tasks done via Ansible scripts/REST API.