Commit Graph

5531 Commits

Author SHA1 Message Date
Mihaela Stoica
fe7b4b6297 CA-304025: XenCenter should not do an immediate toolstack restart if a host reboot is pending, but do the host reboot instead
If the update sequence for automated updates contains an update which requires a host reboot and a hotfix with an immediate toolstack restart (after-apply-guidance=restartXAPI and guidance-mandatory=true),
then XenCenter should do an immediate host reboot after applying the hotfix that required the immediate toolstack restart (as doing a toolstack restart when a host reboot is required is potentially risky)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-30 13:54:02 +00:00
Aaron Robson
e41f1b6e08 CA-303517: In XenCenter, if a VM has more than 1 IP address, it cannot be found using one of its IPs in the search box (#2331)
Refactored redundant IP Address parsing code from XenAPI-Extensions/VIF.IPAddresses and XenSeach/Common.IPAddressProperty into the FindIpAddresses method in the Helpers class to handle multiple networks on a single line with a separator. Added unit tests.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-29 09:47:39 +00:00
Aaron Robson
7024c5b11f CA-300384: XC unable to create (GFS2) VDI of virtual-size larger than… (#2318)
* CA-300384: XC unable to create (GFS2) VDI of virtual-size larger than available storage when creating new VM.
Calling SR.VdiCreationCanProceed on the total space required of each SR as it takes into account that Thinly Provisioned SRs may overprovision in the same way that the NewDiskDialog does by effectively ignoring the free space limit.
IsSufficientFreeSpaceAvailableOnSrForVdi was not taking into account Thin Provisioning when checking if the virtual disk would fit on the SR and as a consequence would attempt to find another SR to place it on silently; either choosing "Local Storage" or "<no suitable storage>" depending on the size requested relative to the SR sizes.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>

* CA-300384: Hooking into the warning mechanism of the storage grid to ensure that the user is aware that over-provisioning is occurring, but not block them from continuing.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-28 16:32:40 +00:00
Aaron Robson
602edd47d8 XOP-953: Cannot change dom0 memory via XenCenter (XC 7.5 RTM on XS 7.… (#2330)
CA-303516: Cannot change dom0 memory via XenCenter.
Allowing the user to proceed (not set the value and min/max to 0.0GB) even if the memory static min and max is in the wrong order.
Adding further detail to the error message in case an out of bounds value is sent to the API which could potentially happen due to the range widening that occurs if the min/max would invalidate the existing value.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-27 15:40:38 +00:00
Mihaela Stoica
6cd2e28754 CA-300760: Only create the action that moves a halted VM if there are actually disks that need to be moved
- with this change the user won't see the misleading "Moving VM to new storage" in History if they tried to move the VM inside the pool, but actually didn't select different SRs for the VM's disks.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-26 16:34:46 +00:00
Mihaela Stoica
8ab3ea2837 CA-300760: Allow intra-pool move of halted VMs through the wizard, even if the storage migration is not allowed
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-26 16:34:46 +00:00
Mihaela Stoica
88ec36ae5f CA-300760: Allow VM intra-pool migration through the wizard, even if the storage migration is not allowed
- if a VM can migrate inside a pool, then we will allow it in the wizard, even if storage migration is not allowed
- If it is a intra-pool migration (without moving the disks), then use the VM migrate action (which does a VM.pool_migrate), not the cross pool migrate action.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-26 16:34:46 +00:00
Konstantina Chremmou
ff708345fa Added functionality allowing renaming of folders. Fixed issue where the form
closed on double-clicking on the node expanded icon. Some improvement in the
use of the folder name prompt dialog.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-26 10:29:39 +00:00
Konstantina Chremmou
16c88cc7b7 CA-302791: Rewrote the ChangeFolder dialog to fix usability issues.
- Corrected folder selection; reduced clicks required to select folders;
  improved text; added delete button.
- Moved FolderChangeDialogTreeView to the same folder as the other TreeViews;
- Added missing null checks to the MutliSelectTreeView and hid properties
  HScrollPos and VScrollPos from VS's designer (the former was initialised
  to zero every time the designer was updated, causing the treeview images
  to disappear).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-26 10:29:39 +00:00
Aaron Robson
a7d9c60239 CA-302772: A host reboot can result in a requested PercentComplete exceeding 100%.
Stepping up the PercentageComplete manually is not required as PollToCompletion is doing this for us already.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-23 10:51:00 +00:00
Darren Matthews
97b847ffa6 L10N : Translation and resx resync
Signed-off-by: Darren Matthews <darren.matthews@citrix.com>
2018-11-22 23:48:28 +00:00
Mihaela Stoica
3ddf69cd26 Update the API bindings
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-22 23:46:54 +00:00
Mihaela Stoica
306b0b043b CP-29779: Handle VM_SECURE_BOOT_FAILED alerts in XenCenter
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-22 23:44:07 +00:00
Konstantina Chremmou
243f3a209d CA-302807: Fixed issue where the server selection on the Patching wizard was
lost when leaving and returning back to the SelectServers page.
Also, the list of SelectedServers does not need to be re-evaluated every time
it is accessed but rather once when we move away from the page.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-22 13:58:19 +00:00
Aaron Robson
c597b2f795 CP-290940: Dundee is the earliest version to support Automated Updates, show a Server up to date tooltip for Dundee and later, where there are no updates to perform.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-22 10:47:23 +00:00
Mihaela Stoica
f161471cd9 CA-302463: Change the action that applies an update to do an async call, so that the calling code notices if the connection has been lost while installing the update
This fixes the bug in the Patching wizard, where the wizard does not show any error and does not notice the disconnection, so it is stuck in the Installing update phase.
The Patching wizard only uses the ApplyUpdateAction class, but I had also changed the ApplyPatchAction class to avoid similar problems in the RPU wizard, where this action is used to install the RPU hotfix during the prechecks.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-21 13:51:20 +00:00
Mihaela Stoica
dfc4e797a0 CA-300759: Only check the VDI_MIRROR capability for ElyOrGreater hosts
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-19 13:31:16 +00:00
Aaron Robson
6f847962ca CA-272847: Compilation time is way overestimated (when creating a ser… (#2316)
* CA-272847: Compilation time is way overestimated (when creating a server status report).

- As the times are made up of server timeouts they overestimate quite significantly, we are removing the time estimates from the screen.
- Do not mention being able to see the time that has been removed inside the explanatory label.
- Removing further unused Util functions LThanTime and GThanTime.
- Redone the layout with the privacy link on a separate row to avoid wrapping at smaller sizes and to even up the layout of the Select/Clear buttons with the Total Size label.
- Fixed the tab indexes and removed the invisible Split Container.
- Adjusted the blurb margins to our default and set the last row with the privacy link to be AutoSize rather than absolute in case of truncation in other languages.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-19 12:27:31 +00:00
Aaron Robson
4af1f68fd6 CA-270440: Copy VM full copy SR list isn't sorted naturally. Resolving not just for SrPickerItem but for the CustomTreeNode as used for other related classes.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-16 15:11:34 +00:00
Mihaela Stoica
660eab5d99 CA-300759: When there is a GFS2 SR in the pool, VMs on local storage should still be allowed to be migrated to the local storage of another host.
When XenCenter checks if a VM can be storage-migrated (including in the same pool), it only checks if migration is possible to one SR (the first SR from the SR list  that supports vdi creation), which could be a GFS2 SR, where migration is not supported. With this fix, we will only consider the SRs which support migration (instead of vdi creation).

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-16 11:50:12 +00:00
Aaron Robson
7122615836 CA-271967: Dismiss button is flat after dismissing first of a list of events.
Handling OnMouseMove which fires more repeatedly than OnMouseEnter and OnMouseLeave with an early return to preserve CPU efficiency.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-16 11:14:21 +00:00
Tim Liu
0377db7be0 CA-301156: VM created from disk import for a UEFI VM has missing values (#2311)
* CA-301156: VM created from disk import for a UEFI VM has missing values

Set default params when importing VHD

Signed-off-by: Tim Liu <tim.liu@citrix.com>
2018-11-16 10:03:18 +00:00
Konstantina Chremmou
3f64c26d87 Added .vs and .vscode to .gitignore. Reverted control subtype change introduced
inadvertently with commit c1256c7734 before the
issue was fixed in commit 2a575b01a5.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-13 11:08:10 +00:00
Konstantina Chremmou
f5174e5bfe Fixed issue where the patching wizard offered to re-apply an already applied
update if the user selected it from the disk.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-13 11:08:10 +00:00
Konstantina Chremmou
b7fd97af11 Removed obsolete UpdateType.Existing and associated properties and methods.
Also, simplified the logic selecting the single update when we leave the
SelectPatchPage so as to avoid ambiguities in which properties are to be set
and refactored the error handling methods to avoid duplicate checks and
provide the right error message (for example, the error message was misleading
for a non-existent path; or, the level of detail provided in the case of
invalid zip content was of lesser relevance to the user).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-13 11:08:10 +00:00
Konstantina Chremmou
67cc929f91 Fixed crash occurring on closing the PatchingWizard if the user uploaded a
legacy patch and then went back to select and install an update.

The code was removing all the uploaded legacy patches except the installed
ones. In this case the installed legacy patch is null hence all the already
uploaded patches need to be removed.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-13 11:08:10 +00:00
Darren Matthews
599d4ea7df L10N: Translation updates
Signed-off-by: Darren Matthews <darren.matthews@citrix.com>
2018-11-12 10:29:10 +00:00
Konstantina Chremmou
2a575b01a5 Fixed issue whereby VS kept toggling between SubType Component and User Control
for some custom controls.

In the case of DoubleBufferedPanel I removed the Designer attributes from
the class definition.
In the case of the EnableableComboBoxEditingControl I moved it to a new
file because the other classes it was sharing the old file with did not
derive from Component.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-09 16:23:29 +00:00
Konstantina Chremmou
c1256c7734 Removed redundant code from GradientPanel and made it more object oriented;
also moved it out of the containing folder as it was its only resident.
Corrected the TitleBar fore colour as it was hard to read due to small contrast
with the bar's backround colour; normalised the code setting the other colours
so it's more unambiguous.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-09 16:20:52 +00:00
Aaron Robson
c4c216a1d1 CA-271945: Close active Wizards when unwinding the Host Maintenance Mode action regardless of if the server is unable to be resolved.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-09 13:53:39 +00:00
Aaron Robson
a78a754ddd CA-271945: Ensuring that the name of the VM is as up to date as possible when creating the name of AutoStart unwind action.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-09 13:53:39 +00:00
Aaron Robson
7accaadb26 CA-271945: Attempting to resolve the pool's connection and searching for it in all open connections for the EnableHAAction in case a host has been destroyed or the master changed.
Preventing an Object (host) has been deleted error when attempting to reenable Maintenance Mode on a Host that has been kicked out of the pool when exiting the RPU Wizard.
Returning null to prevent making orphened tasks that will be stuck at 0% completion if it is impossible to fulfill.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-09 13:53:39 +00:00
Aaron Robson
6353043b15 CP-27819: Switch to Visual Studio 2017 (into master) (#2305)
* CP-27819: Manually setting the ToolsVersion to 15.0 (VS2017) in all .csproj files for consistency and to attempt to enforce consistency of dev environments with the explicitness of the msbuild scripts as used in the build environments.
Auto updated as many of the .sln and .csproj files as VS2017 was willing to do https://docs.microsoft.com/en-us/visualstudio/ide/reference/upgrade-devenv-exe?view=vs-2017 and included changes to the gitignore to ensure that the update report and backup files are not included in the repo.

* CP-27819: Tidying up by removing FileUpgradeFlags, OldToolsVersion and UpgradeBackupLocation nodes from the .csproj files as they are produced as hints for how to revert project upgrades for which we can use version control.

* CP-27819: Removing redundant "ManifestCertificateThumbprint" and "ManifestTimestampUrl" nodes from project files "mk\sign.bat" has been used for this purpose for some time now.

* CP-27819: Updated readme to reflect that VS2017 is now in use.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-09 11:23:32 +00:00
Aaron Robson
f95f094e60 CA-172658: Descriptive error message when failing to suspend a VM fro… (#2275)
* CA-172658: Descriptive error message when failing to suspend a VM f om XenCenter.
Checking if a VM has a pass-through GPU or a vGPU assigned and showing the reason in dialog and tooltip.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-08 22:27:59 +00:00
Joey
6d2c3541f5 CP-29768: Add Skip functionality for RPU supp pack installation (#2283)
* CP-29768: Add Skip functionality for RPU supp pack installation

Signed-off-by: Ji Jiang <ji.jiang@citrix.com>

* Minor corrections

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>

* Revert unnecessary layout changes

Also changed the title of the confirmation dialog to the wizard title, as it could be shown in either RPU or the Patching wizard

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-07 18:07:53 +02:00
Konstantina Chremmou
6cdbbc9b48 CA-301501: Update the progress bar for the action uploading a server status report.
Also, call the XenServerHealthCheckUpload in a using block; use the FileInfo.Open
method to open the zip file for upload.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-05 17:00:13 +02:00
Darren Matthews
bc95b08d62 L10N : Translation updates
Signed-off-by: Darren Matthews <darren.matthews@citrix.com>
2018-11-05 14:20:02 +00:00
Aaron Robson
4a70c32786 CA-301193: XenCenter UI looks ugly after installation of latest Win10 CU update (#2296)
* CA-301193: Avoiding calling ProfessionalColors before we have called Application.EnableVisualStyles as it causes visual styles to be prevented from being enabled and can prevent the program from displayed as expected as the value of Application.InitializeComCtlSupportsVisualStyles is found only one time when first needed and cached. If Application.useVisualStyles is not true as in this case it relies on calling "comctl32.dll" methods to determine if this is the case and after KB4462933 this is no longer the case.
* CA-301193: Setting the TitleBarStartColor and TitleBarEndColor to the ProfessionalColors values.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-04 00:14:59 +00:00
Alexander Schulz
fe924cddbf Use local timestamps for run history 2018-11-02 12:03:56 +00:00
Aaron Robson
d37a28a76c CP-27819: Switch to Visual Studio 2017 (#2294)
* Changing the tools version from 13.0 (VS2013) to to 15.0 (VS2017).

* Updating the Splash project from PlatformToolset of "v120_xp" to "v141" and to a more modern Windows SDK Version available in VS2017.

Signed-off-by: Aaron Robson aaron.robson@citrix.com
2018-11-01 15:34:03 +02:00
Konstantina Chremmou
9751de6d5e Fixed crash occurring when the user selected a single legacy patch, moved to
the Prechecks page, then back to select a single iso update, and forwards again
to the Prechecks page. The cause was that the values of Patch and PoolUpdate
were not always propagated from the Upload page to the following pages, hence
on that occasion they were both non-null, while the logic of the following
pages expects only one of the two to be non-null.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 13:12:09 +02:00
Konstantina Chremmou
3e0a958783 Removed accessors that were set but never used. Removed unused constructors.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 13:12:09 +02:00
Konstantina Chremmou
e63ca825e4 Fixed crash caused by code redundancy.
One of the PatchGridViewRow constructors was obsoleted, hence the _image and
_status cells and the row's PathPatch were always null. When a user selected a
patch, moved to the Prechecks page, back to the Select page, and the host got
disconnected, on moving to the SelectServers page and closing the warning pop-up,
XenCenter crashed because it was trying to update details of null cells. Also,
removed obsoleted toggling expanded state functionality.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 13:12:09 +02:00
Konstantina Chremmou
8b107c86e8 Renamed UpdateType NewRetail to Legacy.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 13:12:09 +02:00
Konstantina Chremmou
fc98eed16b CA-237915: When one attempts logging oneself out, warn them if there are outstanding actions.
For this purpose, call the DisconnectCommand instead of session.logout_subject_identifier.
Also:
- Add the new actions to the History synchronously on the main thread,
otherwise the warning dialog may not detect in time the new actions.
- Although the local root account is currently first in the list, checking whether
the first item is selected is a fragile way of establishing whether the local
root account is selected. Check the row's IsLocalRootRow property as in the
rest of the file.
- Added username detail to the logout action; fixed typo in message key.
- Some minor refactoring to make the code more efficient.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 12:52:07 +02:00
Konstantina Chremmou
80608f971c CP-27924: Require RPU004 when upgrading from kolkata servers (RPU004 is unchanged).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-01 12:08:56 +02:00
Mihaela Stoica
9304bbff5a CA-297086: Rephrase log messages; Use a different constructor for HttpClient 2018-10-31 12:06:18 +00:00
Mihaela Stoica
7f466efc85 CA-297086: Changes following code review 2018-10-31 12:06:18 +00:00
Mihaela Stoica
ce79f72622 CA-297086: Improve the function that uploads a server status report, to avoit timeout exceptions
The changes included are:
- use a HttpClient object instead of HttpWebRequest
- use the same FileStream for all the chunk uploads
- retry the chunk upload if it fails (max three tries)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-10-31 12:06:18 +00:00
Konstantina Chremmou
afbaa0d5ee Missing friendly names.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-10-30 11:40:55 +02:00