Commit Graph

183 Commits

Author SHA1 Message Date
Callum McIntyre
e6cc09ae87 [CA-203752] New VM from Snapshot doesn't use default host
The reported bug was that the new VM would crash because when clicking through the wizard the pool master is selected by default, not the slave the VM snapshot is on. We already select a default host when a new VM is created from a selected host using HostAncestor, but this property is null for a template (which isn't in the server/VM tree). The fix is that if the selection is a template (which it is when we use new VM from Snapshot) then we instead use its host (using Home()) as the default host. Now the correct host is selected in the VM wizard and the VM creation succeeds.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-10-27 17:52:32 +01:00
Mihaela Stoica
6bffb803a1 CA-226112: Disable PVS read caching causes System.NullReferenceException
- code simplification

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-10-21 07:10:23 +01:00
Mihaela Stoica
994ced8388 CA-226112: Disable PVS read caching causes System.NullReferenceException
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-10-20 14:52:51 +01:00
Callum McIntyre
2ad99b06d4 [CA-225062] For Ely and greater hosts, don't check for IO tools when activating/deactivating (this covers detatch + delete too in UI) a VBD
Instead we use the vbd.allowed_operations list, and check for the plug/unplug operation respectively.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-10-18 16:48:05 +01:00
Mihaela Stoica
329f084a7e Merge branch 'CAR-2184' to master
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>

Conflicts:
	XenModel/XenAPI-Extensions/SR.cs
2016-10-18 10:18:47 +01:00
Mihaela Stoica
7ec3881e05 Merge pull request #1212 from kc284/CA-157786
CA-157786: General tab for VDIs.
2016-10-18 08:01:57 +01:00
Konstantina Chremmou
08e1b2c1b7 CP-18417: Removed flag forbidding update; was added for CP-17750, but is no longer applicable.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-10-17 11:16:16 +01:00
Konstantina Chremmou
7a74096d3b CA-157786: Added general tab for VDIs.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-10-14 13:51:51 +01:00
Konstantina Chremmou
0b3d3abfcc Code repetition.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-10-14 12:21:59 +01:00
Gabor Apati-Nagy
6296277317 Merge pull request #1188 from kc284/vm_migration
CA-220218, CA-205799, CA-205791 plus one or two other issues and refactoring
2016-10-07 16:18:49 +01:00
Konstantina Chremmou
b78f823b17 CA-220218: For halted VMs moving intra-pool, XenCenter does not need to assert migration
is possible, because what it actually does is move. When asserting migration use
an SR other than the VDI's current SR for the check to ensure that both source and
target SRs are checked to see whether they support migration. Also, use the VM's
Home() instead of resident_on to ensure the current server cannot be selected as
target server. Some refactoring.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-10-03 10:30:40 +01:00
Konstantina Chremmou
f1a43abbf0 Refactoring: it's not a good idea to set virtual members in constructors; thus
the MenuText can stay a getter.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-30 13:45:44 +01:00
Konstantina Chremmou
55f1a03224 Fixed wrong images in the following cases:
- the image for resume suspended VM on non-home server should be connected-server,
not vm-being-migrated.
- the image for a server where a running VM cannot be migrated to should be connected-server,
not disconnected-server (it is disabled anyway). Also, simplified the logic to obtain
the cannot-execute-reasons.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-30 13:45:30 +01:00
Konstantina Chremmou
6833722992 Renamed command so it's more obvious what it does and made some corrections to its checks.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-30 13:45:23 +01:00
Konstantina Chremmou
eb3fbe2ac8 Corrections and refactoring on VDI move/migrate:
- Allow move of multiple VDIs
- CA-187659: show better messages when batching move/migration of multiple VDIs.
- Show different tooltips for single vs. multiple VDI move/migration/deletion.
- Refactored the MoveDiskDdialog. Removed the inherited class VDIMigrateDialog and
the batching manager as it was not very different from its parent, it was registering
the events twice, and was batching migration of even single VDIs.
- Tidied up the Move- and MigrateVirtualDisk commands so they're easier to compare.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-28 09:50:43 +01:00
Konstantina Chremmou
2ff6f74488 Fixed the following issues:
- Was only able to move and not migrate vdi if selected from the objects view.
- The text on the ToolStripMenuItems on the SrStoragePage was different from the
corresponding buttons.
- Added item move/migrate to the multiple VDI context menu. The Properties item
should not be shown in this case.
2016-09-28 09:50:23 +01:00
Mihaela Stoica
f2b1443064 Merge branch 'master' into CAR-2184
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>

Conflicts:
	XenModel/Messages.Designer.cs
	XenModel/Messages.resx
2016-09-26 13:26:31 +01:00
Mihaela Stoica
c6eab65fdf Merge pull request #1154 from kc284/master
Some corrections on VMStorage page and disk move/migrate/detach
2016-09-22 15:21:48 +01:00
mcintyre94
dd42394a25 CP-16922: Implement GUI for enabling PVS read caching (#1179)
* CP-16922: UI changes to PvsPage to replace the single configure button with a separate enable and disable one, per the design doc

* CP-16922: Intermediate checkin - command + dialog implemented, but PVS page has some layout problems.

* CP-16922:  Implement GUI for enabling PVS read caching and marking/unmarking VMs for prepopulation

Fix the broken layout by reverting MainWindow.resx (which shouldn't have changed) back to the previous commit. Also removed duplicate properties button code.

*  CP-16922: PVS Page changes, to properly display all VMs (not just ones with proxy), only populating proxy columns if there is a proxy set.

* CP-16922: Use a CommandButton for the enable button, connected to the same command as the VM main menu button, and using the table selection as its selection manager.

* CP-16922: Delete the old enable button click behaviour (because it now has a proper command), was causing the dialog to show up twice

* CP-16922: Properly list VMs by hiding those that should be hidden (in addition to non-VMs, also hide the __gui__ prefix and others covered by Show function). Also fixes a bug in NewVMGroupVMsPage discovered when fixing this - it would show VMs that should be hidden if you used the search bar.


* CP-16922: Use ButtonText on the Command to set the text on the PVS enable button

* CP-16922: Add the disable PVS read-caching command, and its associated proxy destroy action. Both based off enable equivalents (main difference is no dialog for now). Not used yet but will be in main window menu + disable button

* CP-16922: Add disable PVS read-caching to the main window menu (under enable), with the disable command attached to it


* CP-16922: Add support for disabling PVS read-caching for selected hosts via the PVS tab page by converting the disable button into a CommandButton in the same way as the enable button, using its own command + selection manager (because Selection Managers only bind to one control)

* CP-16922: Design - adding the "read caching enabled" column from the design, so that we display both whether caching is enabled and whether the VM is currently cached. If it's disabled all other values are missing.


* CP-16922: Add the PVS site column per the design to show the site a VM's PVS Proxy is on if it has a proxy


* CP-16922: Add an event handler for VMs changing so that newly provisioned VMs immediately show up in the PVS tab page


* CP-16922: Support for properly remembering the selection when the VM list is refreshed. A new method returns the list of VMs for the selected rows, and we can then check if the VM for the row being added is in this list. If there was no previous selection then we still select the first row by default.


* CP-16922: Remove prepopulate, which is being removed from the design. The next XAPI version will remove it, so just pass False as prepopulate for now, and remove the option from the dialog and PVS tab page.


* CP-16922: Improve UI appearance for a missing Storage Repository. Per the design, if there is no SR show the message None (memory only) instead of an empty cell

* CP-16922: Improved sorting behaviour. All columns (except VM name, which always uses it) use the VM tag as a sorting fallback (since they all have duplicates). New default sort which sorts by caching enabled first (yes before no), and then VM tag as a tiebreaker. Support for remembering the current sort on refresh, ie when a value changes.

* CP-16922: Refactoring to use a VM extension method to get the PVSProxy (or null if none exists) for a VM. This was used in the PVS Page + commands which are now much simpler.


* CP-16922: Move where the SelectionChanged event handler is set when refreshing the PVS table, so that the command buttons are updated correctly.

* CP-16922: Improvements to PVS read-caching dialog. Set accept/cancel buttons properly + adjust tab values, so focus acts as expected


* CP-16922: Remove the images from the menu for Enable/Disable PVS read-caching, most commands in the menu don't have one

* CP-16922: Sorting out the strings for the actions + ParallelAction calls, and moving them into the resx. Also reverting wrong MainWindow.resx changes.

* CAR-2184: XAPI changes. I've made the minimal possible changes to PvsPage to ensure it compiles, but it's had a lot of feature work (CP-16922) that supersedes this, these small changes should keep that merge painless.


* CAR-2184 XAPI: Reverse the unrelated changes, only keep the PVS ones.

* CP-16922: Merge latest XAPI changes, notably changes to Pvs_site.create

* CP-16922: Change tab show/hide logic for PVS tab, show it even if there are no PVS sites.

* CP-16922: Implement GUI for enabling PVS read caching

Design changes - remove the storage repo column and replace it with status, which is populated with a friendly version of the pvs_proxy_status enum. Also populate site list using site.name_label

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>

*  CP-16922: Implement GUI for enabling PVS read caching

Adjusting the CanExecute of Enable PVS read-caching command to require at least one PVS site to be created. Since the PVS tab can show up without any sites, we need this because we can't create a proxy without a site.

* CP-16922: Code review changes.

Tidied up messages, and ensured actions run async properly, and without exiting before their task.

* CP-16922: Code review changes.

Update dialog resx, wider combobox on dialog, update action descriptions before setting RelatedTask, add friendly message body for PVS error notifications.
2016-09-22 15:08:15 +01:00
John Hua
b0638bb4f5 CA-218956: Expose HIMN when showing hidden objects
Expose both the HIMN network and any VIFs associated with the HIMN
network using XenCenter when the "View->Show Hidden Objects" option
is displayed. However the shown HIMN should not be able to autoplug,
edit or delete.
2016-09-08 17:48:25 +08:00
Konstantina Chremmou
d2a3a17369 Fixed typos.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-06 14:53:46 +01:00
Konstantina Chremmou
73a549a4d0 Improvements made while investigating CA-218953:
- when the cd drive or the tools iso cannot be found, the action should fail.
- if the tools SR is broken, do not show the error on a pop-up because the UX is
bad when installation is attempted on multiple VMS.
- added one more entry to the list of possible tools iso names.
- small performance improvement.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-08-17 22:35:01 +01:00
Mihaela Stoica
7c4a4fa219 Merge pull request #1121 from mcintyre94/CA-218241
CA-218241: Cancel connect right click menu item does not seem to be doing anything
2016-08-16 09:44:51 +01:00
Callum McIntyre
05efba8b9f CA-217821: Rename command back to CrossPoolMigrateToHomeCommand 2016-08-15 16:13:35 +01:00
Callum McIntyre
8b035b3af5 CA-218241: Cancel connect right click menu item does not seem to be doing anything
The CancelHostConnectionCommand executes by using a DisconnectCommand, so the fix here is to allow that command to execute on connections in progress as well as those that are connected.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-08-15 15:25:14 +01:00
Callum McIntyre
3a5444ceb2 CA-217821: Specified home server in cross pool migration should behave as home server
Mostly just terminology changes from home server to target server in the CPM wizard. Changes in shared component SelectMultipleVMDestinationPage (shared with ImportWizard) to allow CPM wizard to rename the Home Server column (as it can the VM/template one - using the same pattern).

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-08-15 14:22:18 +01:00
Mihaela Stoica
72be4e1141 CP-16935: Configure Control domain memory for a host
- Added Control Domain memory entry in the host memory control on Memory tab.
- Control domain memory is editable for Ely and greater hosts.
- Can be changed from a dialog that requires host to be in maintenance mode and triggers a host reboot after the memory is changed.
- This dialog is available from Server main menu and from the host memory tab.
- Also removed unused unit controls on host and VM memory bars.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-08-09 14:50:04 +01:00
Konstantina Chremmou
cce9d5b1ce Refactoring: (1) Simplified the logic for gathering the can't-execute-reasons for
a selected item collection - there was no need to make temporarily each one of them
the command selection just to call CanExecute on them. (2) Do not mix the methods
returning the can't-execute-reasons (which can be unknown) with the tooltip property
(which can be null).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-07-25 01:01:05 +01:00
Konstantina Chremmou
1bbec00d57 CA-147657: Allow setting the ToolTipText for the command ToolStripButtons and ToolStripMenuSubitems
to null, otherwise the wrond text is shown for items with null can't-execute-reason
that are selected after items with non-null can't execute reason.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-07-25 01:00:53 +01:00
Konstantina Chremmou
d32b7a967b Added overload for the SelectedItemCollection constructor taking one item - it seems to be needed as often as the other constructors.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-07-25 01:00:44 +01:00
Konstantina Chremmou
ea60eaa24e Merge pull request #1065 from xenserver/CAR-2217
Request to merge CAR-2217 into master
2016-07-11 14:11:00 +01:00
Mihaela Stoica
21fe02922f Merge pull request #1048 from cheng-z/CA-213045
CA-213045: Make server backup file name rebrandable
2016-07-08 16:16:46 +01:00
Cheng Zhang
a682811ed5 CA-213045: Rework on comments to change string format
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2016-07-04 09:11:10 +08:00
Konstantina Chremmou
051afb48c2 Merge pull request #1012 from MihaelaStoica/CA-209502
CA-209502: Exception while deleting multiple folders
2016-07-01 09:04:48 +01:00
Mihaela Stoica
bcc120f0b2 CA-209502: FolderAction refactoring
- created subclasses for each folder action type (create, rename, delete, move)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-30 15:41:46 +01:00
Cheng Zhang
76f7946ec4 CA-213045: Make server backup file name rebrandable
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2016-06-30 10:31:10 +08:00
Mihaela Stoica
97feb30fbf Merge pull request #1041 from kc284/CAR-2217-other
CP-17866: Grey out the "Move" button on the VM storage tab if the storage does not allow mirroring.
2016-06-28 13:22:30 +01:00
Konstantina Chremmou
3d8ae9daf8 CP-17470: Added missing hotkey. Performance improvement by using Exists instead of FindAll in check. 2016-06-27 10:43:29 +01:00
Konstantina Chremmou
5dd2873b72 CP-17866: Grey out the "Move" button on the VM storage tab if the storage does not allow mirroring. 2016-06-24 18:10:22 +01:00
Konstantina Chremmou
8e2c381f85 CP-17470: Warn users if they attempt rebooting or shutting down a host running a
VM with the hci-warn-before-shutdown flag. Minor changes to make the warnings for
rebooting and shutting down more consistent (preselect the No button for rebooting;
extended the Yes button text; modified warning text)
2016-06-23 15:26:32 +01:00
Konstantina Chremmou
3fc701ecb8 CP-17502: Hide SR types from the NewSrWizard if the corresponding sm plugin is not available.
Further, disable the Reattach SR if there is no sm plugin for its type.
2016-06-22 18:34:21 +01:00
Konstantina Chremmou
0f908a674e CP-17750: Block the patching wizard for clusters with the hci-forbid-update flag (disable the relevant pools/hosts on the select servers page; do not launch the patching wizard at all if there are no clusters that can be patched). 2016-06-20 14:10:00 +01:00
Mihaela Stoica
62870544c6 CP-17161: Add 'using' statement around dialogs to ensure garbage collection
- fix UpsellDialog usages

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-20 13:26:52 +01:00
Mihaela Stoica
da9e99b1cb CP-17161: Add 'using' statement around dialogs to ensure garbage collection
- fix ActionProgressDialog usages

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-20 13:17:42 +01:00
Konstantina Chremmou
b575fd3d44 CP-17690: Block RPU for clusters with the hci-forbid-rpu flag (disable the relevant pools/hosts on the select pool page; do not launch the RPU wizard at all if there are no upgradable clusters). 2016-06-20 13:11:21 +01:00
Mihaela Stoica
3f25c5868f CP-17161: Add 'using' statement around dialogs to ensure garbage collection
- fix all ThreeButtonDialog usages (and some other dialogs that I've came across)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-20 10:49:12 +01:00
Konstantina Chremmou
42f76bfa23 CA-212078: Correction as per code review to guard against the case when the VM is not resident on any host. 2016-06-07 12:27:54 +01:00
Konstantina Chremmou
5b19081d61 CA-212078: Do not check for CPU compatibility feature when the VM's resident host is not dundee or greater. 2016-06-07 09:30:37 +01:00
Mihaela Stoica
5d58222248 CA-209502: Exception while deleting multiple folders
- Changed the FolderAction class so that it can be used to delete or move multiple folders across connections, instead of having multiple actions (one for each holder) which can not run in parallel.
- The api calls that update the EMPTY_FOLDERS entry in pool's other_config are preformed last for all connections, avoiding cross-thread exceptions when two threads try to add/remove the same key.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-03 15:38:52 +01:00
Mihaela Stoica
c5ba4b49e9 CA-205554: XenCenter says "Activating virtual disks" when deactivating multiple virtual disk
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-04-06 08:15:16 +01:00