CA-320203: Fixed the update wizard failure when installing two cumulative updates
The issue was that when installing 2 new versions in one go (e.g. two cumulative updates), the installation succeeds on master but it cannot continue on slaves, because it cannot find the first CU update anymore.
The fix is to refresh the update record before applying the update, with the record found in the cache. Also, if there is no update in the cache, try to re-introduce the update.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Made storage selector blurb for XVA import a bit more informative.
- A simple checkbox for starting the new VMS on the finish page is adequate.
- Typos. Property modernisation.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
When running the XenCenter version precheck, calculate the higher server version that will be installed (by looking at the update sequence) and use this for checking the XenCenter version compatibility.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- if there is only one host in the selected pool, then preselect it.
- make sure that the Next button is enabled when a target host is selected.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1. Update AddVGPUDialog title;
2. Add label above the combobox;
3. In the combobox, add text to the entry saying if multiple vGPU is supported;
4. When the dialog is open, focus on the combobox;
5. Preselect the vGPU type if there is only one option available;
6. Setup the Help ID for dialog;
7. Optimize vGPU adding and deleting in GpuAssignAction.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* CP-31063: Add support for multiple vGPU
(incomplete)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CP-31063: Add support for multiple vGPU
(part 2)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* AddVGPUDialog
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Update bindings.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* REQ-720: Initial implementation of AddVgpuDialog.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Improve the handling of buttons and combobox. Fix comments.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Fix comments.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
- the issue was that in one usage of PatchCanBeInstalledOnHost the wrong version was passed to the applicableVersion parameter (in CreateAlertForXenServerVersion)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- CA-164372: Added line breaks in the pool updates list for readability and to match the corresponding host list.
- Moved the updates, version and licence sections closer together.
- Removed unnecessary panels and placed top buttons on a TableLayoutPanel.
- Moved size hardcoded values from the code to the resource files.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CA-317856: Ensure that VMs are repatriated after all hotfixes are applied and the host has been rebooted.
- there is no need to remove the "reboot host" plan actions from the delayed actions list, because the action itself has code to check if a reboot is actually needed.
* CA-317856: Only add the "Exit maintenance mode" progress step if the host is in maintenance mode at that point.
- moved the AddProgressStep() call inside the function that checks if anything needs to be done (i.e. is host needs to be enables)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* Refactored the VIFDialog to fix various problems:
- Launch the dialog in using blocks.
- Event GotFocus is not meant to be handled directly in the code.
- Populate the dialog in the OnLoad override instead of the constructor
as this causes problems at design time.
- Popping up an error message for duplicate MAC on combobox item
selection or textbox text change is not optimal UX. Perform this
check once when closing the form. Additionally the parent form of the
pop up should be the dialog, not the main window.
- The validation messages are not obvious to the user because they are
hidden in the tooltip of a disabled button. Show them inline instead.
- There is no need to create commands for VIF creation/change; use
the relevant actions instead.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Corrections as per code review plus some more code tidy and refactoring.
- Added option to suppress Create/DeleteVIFActions
- Use property RebootRequired to indicate hot-plugging is unavailable
(assigning various objects of different types to the Result of the action
during its run may cause confusion).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Made command parameterless constructors public; made browsable events public;
replaced manually written with auto-generated code.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* added support for the new xxHash-based VM imports and exports
* added xxHash to the legal notices
* added Citrix copyright notice
* removed redundant code and made use of unused variable
Signed-off-by: Rory Bertuzzi-Glover <rory.bertuzzi-glover@citrix.com>
* The radiobuttons local-remote gave the impression the two types of logging
were mutually exclusive. Use a checkbox instead to make it obvious that
the logs are directed to a remote server in addition to being stored locally.
* Updated log destination display on the General TabPage.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
and removed static method creating the dialog from XenObject; the constructor
can be used for this purpose if the command's CantExecuteReasons are keyed
on IXenObjet instead of SelectedItem.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Removed unnecessary ITaskSpecification interface and its inefficient
implementations; compacted methods to make following the logic easier
and avoid duplicate dictionary lookups.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- On the dialog show the next run time in both the client's and the server's local time zone.
- On the VMSS frequency page allow the user to pick the schedule in the client's
local time zone and show then next run time in both the client's and the server's local time zone.
- Refactoring to fix workflow and class design, reduce amount of code and simplify logic.
- Various layout improvements.
Signed-off-by: Aaron Robson aaron.robson@citrix.com
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Refactored MeddlingAction and Task classes: moved the logic for building a MeddlingAction outside the Task class and switched to using the vm_operations enum to identify which tasks are suitable for MeddlingAction
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- When asserting if a VM can be migrated to a pool we don't have to check all the hosts in the pool at this point, we can enable the pool when we find the first host where migration is possible; we will check the rest of the hosts only if that pool is selected.
- If the destination pool is older than the source, then we don't need to do any server calls because we know that migration to an older host is not allowed.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- hide the boot mode control if there is only one option (BIOS boot);
- add text "(experimental)" to the experimental options (in the radio button text);
- if an option is disabled, then hide the experimantal warning, as there is already a note saying why it is disabled;
- more detailed experimental warning.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
If a host needs to be rebooted after the update application, and the update is not a live patch, then do the host evacuation before applying the update.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Thsi fixes the bug where XenCenter shows connection failure in the RPU when retrying an upgrade
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Removed RPU001 and RPU002, as 6.x versions are not supported in XenCenter anymore
- Replaced RPU003 and RPU004 with new versions
- Added RPU005 for Lima
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
of the hosts to be upgraded and not only on the first one in the list.
For this purpose, the test has been moved to the prechecks, and the
failures are now shown as a non-fixable problem.
Further, specification of the network location of the installer files
has moved closer to the upgrade mode selection.
Also, moved the hotfix and upgrade related checks immediately after the
host liveness check.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Moved these errors to the FriendlyNames, which is reserved for resources with
keys coming verbatim from the server.
Some code efficiency corrections to the page's workflow.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
because it only manages friendly names; moved it closer to the relevant resource files.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CP-30335: Fix RPU wizard tests
* CP-30335: Add abstract class WarningWithMoreInfo and use it for two of the existing Warnings
* CP-30335: Add a new precheck which produces a warning if the Dom0 memory after the upgrade will be increased.
- if the Dom0 memory after the upgrade is known, then a warning is shown if this is higher than the current memory, regardless of the version of the upgrade
- if the Dom0 memory after the upgrade is not known (e.g. because the rpu plugin does not have the function that returns this), then a warning is shown if upgrading from a pre-Naples version
* CP-30335: Add a more detailed error message if the host evacuation fails due to not enough memory in the RPU and Patching wizards
* CP-30335: Add branding variable for version 8.0
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Moved Install Location (RollingUpgradeWizard_SelectInstallMethod) page immediatelly after the Upgrade Mode page (and before the Prechecks page)
- Added a new page, called Extras, which contains the updates and supp pack installation options. These options have been moved here from the "Upgrade Mode" and "Ready To Upgrade" pages. This page is also inserted before the Prechecks
- There is no "Ready To Upgrade" page anymore. So the wizard pages are:
- when automatic mode is selected: Before You Start, Select Pools, Upgrade Mode, Installer Location, Extras, Prechecks, Apply Upgrade.
- when manual mode is selected: Before You Start, Select Pools, Upgrade Mode, Extras, Prechecks, Apply Upgrade.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
or upgrade process (either when cancelling the wizard itself or when exiting
the application). Rephrased confirmation message for clarity.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
(either when cancelling the wizard itself or exiting the application).
Implemented in the first instance for compiling the server status report.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- removal of the SystemStatusAction launching the individual SingleHostStatusActions,
because the connection was set incorrectly to the last one of the selected
connections and, if an error occurred to that connection, the data collection
for all of them failed.
- proper handling of HTTP.CancelledExceptions.
- replacement of the FlickerFreeListBox by the more versatile DataGridViewEx.
- corrections to reporting progress for individual hosts as well as page totals.
- made collection of client side data more obvious.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
set by the caller. Test corrections so they don't time out due to blocking
open dialogs. Some tidying up.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
are swallowed. Use optional parameters instead of method overloads. Some other
modernisations.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Since we support checkpoint of Nvidia VGPU dedicated VMs, the conditions
text when new a VMSS needs to be refined.Note that Intel and AMD dedicated
GPUs VMs still be blocked for checkpoint.
Signed-off-by: Min Li <min.li1@citrix.com>
* Simplification: use auto-properties.
* Removed unnecessary null check. Converted private methods to linq method chain.
* Removed unused file. Added null check.
* Corrected property names as it was difficult to distinguish between the alert,
the patch and the filepath.
* Removed duplicate lock.
* CA-296490: Rewrote the logic uploading single updates so as to facilitate uploading to multiple pools in parallel.
* Corrections as per code review.
* Account for the case of uploading from disk legacy updates that do not correspond to an update alert.
Removed unfriendly error messages (the failure is written out in the logs anyway).
* Wizard test corrections and some modernising:
- Only call cancel on the last page if the test allows us to.
- Do finish the UpdatesWizard test.
- Finish the RunWizardKeyboardTests using key strokes instead of button clicks.
- Ensure the Cancel/Previous buttons do not have focus when sending an Enter stroke.
- Use optional parameters in the WizardTest constructor and string interpolation.
* Renamed badly named property.
* Improved code cloning VMs by assigning new opaque_refs to cloned VBDs.
Compacted test object provider: use optional parameters instead of method overloads.
* Modifications to prevent multiple update of enabled state and ensure the wizard
buttons are updated last.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Signed-off-by: Aaron Robson <aaron.robson@citrix.com> (+1 squashed commits)
Squashed commits:
[170a204c] CP-29875: Campaign/Version number should have underscores as separators not points.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com> (+1 squashed commits)
Squashed commits:
[ead4af87] CP-29857: Ensure that the help URL is fully lower case.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com> (+2 squashed commit)
Squashed commit:
[0350c0a6] CP-29875: Include campaign, medium and source in the help URLs.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
[1e1c1c1c] CP-29875: Refactor and unit test current help URL behavior.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
option to change this on the Options dialog has not been provided as deemed
unnecessary.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
updates until Refresh was clicked. Also, some UX improvements:
- The Install Updates button should always be enabled in case the user wants
to install supp packs.
- If a type of update is disabled, show always the message at the top of the
grid view, for both views, and even if the list is not completely empty,
otherwise the user may easily forget the update is disabled and be misled.
In this case, the centred warning does not need to show the reason why no
updates were found.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Use two separate feature flags, `guefi` and `guefi-secureboot`, with the following rules:
- If the feature is disabled, then the option is hidden in XenCenter.
- If the feature is enabled and experimental, then the option is visible and a warning is displayed in XenCenter (in the New Vm and Import wizards).
Also show the reason why a boot mode option is greyed out (when the uefi/uefi-secure boot mode is not supported in the selected template).
(On the Page_InstallationMedia control, I moved the BootModeContol and PvBootBox controls inside the TableLayoutPanel, to allow better alignment and for better visibility in the design mode)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- In the New VM wizard, the boot mode control is only visible for Naples or greater hosts
- In the Import wizard, I had moved the boot mode options to a separate page, added after the target selection page, to allow the version check. The new "Boot options" page is only added for Naples or greater hosts.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
time a new object type is selected. If the user has chosen to collapse it,
respect their choice.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CP-29856: Support minimum number of vCPUs in guest templates
- Show a warning if the user wants to set a smaller number of vCPUs than the minimum specified in the template
- Add a null check; Set the warning label text before making it visible to avoid flickering.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
If, for example, the host was disconnected, poolUpdateFromHost was null,
which was causing a silent exception resulting to an empty precheck list
shown on the page.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
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>
* 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>
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>
- 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>
- 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>
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>
- 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>
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>
* 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>
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>
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>
* 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>
inadvertently with commit c1256c7734 before the
issue was fixed in commit 2a575b01a5.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
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>
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>
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>
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>
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>
* 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>
* 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>
* 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>
* 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>
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>
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>
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>
hidden and in all other cases it was set by the implementing control, i.e.
the label was not reusable, hence no reason to have it in the control and risk
layout issues. This means that the SrPicker does not need to be a control
encapsulating a CustomTreeVIew, but simply derive from the latter.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CA-293814: If there are no VMs running, entering Maintenance Mode without showing Dialog.
* CA-293814: Refreshing the view after shortcutting entering the mainenance view (no running VMs so no window shown) in the same way as the rest of the updates are managed.
Please see: https://github.com/xenserver/xenadmin/pull/2264
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
* CA-203431: Removed prefix comma and space from the start of the list of hosts in the multipathing alert message.
* CA-203431: Removed duplicate Host names from multipathing alert message.
* CA-203431: Unit tests for MessageAlert.FindHostUuids with tweaks to allow it to handle a null input as if it was an empty enumeration.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
* CA-298921: End of error message in XenCenter is cut off when failed to start VM, word wrapping on the Reason column (and top aligning the other columns) for consistency.
* CA-298921: Adjusted the padding of the icon.
* CA-298921: Removed null Bitmap from .resx.
* CA-298921: Resolving text alignment issues with single line (i.e. short) Reasons.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
* CP-14807: Delete OEM in ServerVersion
* CP-14807: Removing unused IgnorePatchAction and IgnoreServerAction classes (moving their constants to the Updates class).
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
This PR is aimimg to (1) fix a regression introduced by #2223 whereby the toolbar items did not have the correct state on first launch; (2) improve performance by removing some updates which I believe are not needed.
* Removed some duplicate calls to RefershTreeView and UpdateToolbars because
they are called within the action's Complete event handler.
Also, normalise the way the treeview refresh is requested by the various actions the
commands are launching.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Removed some explicit calls to refresh the treeview since this is done by
the connection result handlers.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* The toolbars and tabs should be updated every time the treeview is refreshed.
This should happen when the refresh event is handled rather than calling
UpdateToolbars explicitly after a treeview refresh is requested; also, it is
the treeview refreshes that should be throttled and not the toolbar and
tab updates (the throttling mechanism may need correction).
Also, removed unnecessary Invoke as we are already on the UI thread.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Simplified UpdateManager.Update event declaration.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CP-29657: Create message for HOST_LOW_MEMORY in XenCenter.
Includes an update to the latest XenModel API.
* CP-29657: Included rebuilt FriendlyErrorNames designer.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
the build output folder and removed one of them as it's now unused. Included
some left out images into the project. Updated README.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Correct out of range percentage and throw an assertion instead of silently
logging it so we can fix the causes of it. Compacted method logic.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Exception handling: prevent InvalidOperationException if the health check service
is not found on the computer (installation is optional).
Do not throw exception and handle if the task handle is invalid, but rather
throw it only for other cases of task.status being failure.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
is easier to understand which one is called from which command.
Removed superfluous TableLayoutPanel.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
do not show the upsell dialog; the user should be able to move the VDIs without
having to detach them first.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Renamed method IsExiting to IsInvokable to better describe its contents.
Added null check in it (previously only one of the four Invoke methods was
checking for null).
Added null check when we set the TestExceptionString in automated test mode.
Added logging to exception handling.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
There can be cases when we have logged in a session, events are fired
causing the tab pages to be refreshed, however we may abort the connection,
for example, due to brand mismatch. In this case the licenseStatus has not
been initialized, however the refreshing general tab tries to access its
properties resulting to a crash.
Also some method tidy up.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
This avoids firing the ConnectionClosed event explicitly after EndConnect;
it also avoids refreshing explicitly the tree as the main Window handles the
ConnectionClosed event which requests a refresh.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
pop-up, otherwise the UX is slightly strange if the failure appears on the
status bar only after the user has closed the pop-up.
Also, improved failure message shown on the History page.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Due to the delay interval between refreshes, this UpdateTolbars was called
before any root nodes were added to the tree, hence the only new tab to
add was Search, which got selected (previously this did not happen,
because it was taken for granted that the root node was added by the constructor).
Immediately afterwards the treeview was refreshed, the root node was selected and the
home page was added, but the selected Search tab was erroneously preserved.
Also removed extra RequestRefreshTreeView because the tree will be refreshed,
if required, by the handlers of the connection events.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- The new logic of adding/removing tabs in the ChangeToNewTabs method also fixes
tab-title flickering when we move from the Home node to a disconnected host.
- Renamed enum members Tab.Overview to Tab.Search and Tab.Settings to Tab.General
since the pages mapped to them are TabPageSearch and TabPageGeneral respectively.
- Do not call directly UpdateToolbarsCore but rather UpdateToolbars since the
latter takes account of the queued requested updates.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
PersistExpandNodes should not take for granted that the treeview always has nodes.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
With this change, following are working:
1) After applying XS75E003-5 only restart host, no restart toolstack
2) After applying vGPU driver on 7.4, restart host happens
Signed-off-by: Ji Jiang <ji.jiang@citrix.com>
- When the host/pool was disconnected or when changing selection from connected to disconnected pool
the header was not updated with the new licence status.
- If the pool hosts' edition is none of the known editions, show unknown, not free.
- Tidy up: moved the Pool.LicenseString method to Helpers.GetFriendlyLicenseName.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Also, removed unnecessary comments from index.html because they were making
the file illegible. Included new logo in the project file.
Added localised html files so we can generate the mht files from them
(localisation should not happen in the mht files, but rather in the source html).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
CA-287643: Replaced list view with data grid view to resolve column sizing issue and for consistency with the rest of the product.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
need an EnableHA button which additionally appears greyed out while HA is being
enabled. While an HA action is in progress we should only change the enabled
status of the already visible buttons.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
the spinner with the surrounding controls on a parent control/form.
Also, removed the icon from the spinner because in the
majority of implementations it was invisible and the extra space was just
complicating the alignment of the surrounding controls.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Using web help instead of local Proof of Concept working.
Please note that some of the HelpIDs in the HelpManager had a mapping to the web page name.
Some are not used anymore, but they should be checked.
* Removing the help files (.chm) from the project, will require changes to the installer scripts.
* Setting the locale in the HELP_URL.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
* CA-297020: Do not download imported appliance on a modal dialog, but rather
asynchronously on the ImportSourcePage, so that the rest of XenCenter is usable
while the download is taking place; used the page's progress bar for this purpose
and removed the DownloadApplianceDialog.
* Corrections to the validation of the import source.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CA-294333: NewPolicySnapshotPage corrections.
- Fixed layout and accessibility of controls.
- Changed clickable info icons to normal icon+text info panels because they
are used more widely across XenCenter and the user does not need extra clicks
to access the information.
- Fixed bug where two clicks were required to check the quiescing checkbox
if the Disk and Memory radio was selected.
* Minor layout correction.
* Removed some obsolete code.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
having preselected a connection on the treeview. Also added a null check to
prevent crash if the connection is suddenly interrupted while moving away
from the select destination host page.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* CP-28679: XC: Allow choosing boot options during disk import
Signed-off-by: Tim Liu <tim.liu@citrix.com>
* CP-28679: XC: Allow choosing boot options during disk import
1. Keep spaces instead of tabs
2. Update page header text to reflect the new control
3. Refine UI
Signed-off-by: Tim Liu <tim.liu@citrix.com>
1. Update the duplicated shortcuts on CPU&Mem Page
2. Default radio boxes invisible
3. Move hardcoded logic to VM.cs
4. BIOS boot should be always enabled
5. Move radio boxes to Installation Media page
6. Extract radio boxes as a user control
7. Update summary
Signed-off-by: Tim Liu <tim.liu@citrix.com>
* CA-293776: The order in which a single update is applied on the slaves is not the same as the order in which they are displayed
Apply the same Hosts sorting rules for all the PatchingWizard Pages .
Signed-off-by: Tim Liu <tim.liu@citrix.com>
* CA-293776: The order in which a single update is applied on the slaves is not the same as the order in which they are displayed
Place orderby clause after where clause
Signed-off-by: Tim Liu <tim.liu@citrix.com>
* CA-293813: Patch pools in parallel when installing a single update/patch or supplemental package.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Corrections as per code review.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
property to the derived classes (they don't share much of it anyway) and the method
CalcMemoryUsed to the VMShinyBar class where it is needed. Also made the latter's
property Increment non-browsable.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
setting controls. Also removed the various types of ballooning dialogs since
the only thing changing was the contained memory settings control.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
The other part of this ticket (add OTHER_OPERATION_IN_PROGRESS to the known errors) has already been done in commit 97a60c91.
Minor refactoring to the VMProblem class.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
asynchronously on the SelectImportSourcePage, so that the rest of XenCenter
is usable while the unzip is taking place; for this purpose a progress bar
was added on the page and the DecompressApplianceDialog was removed.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
from this an object with selected TabPageFeature to a different object with a
deselected TabPageFeature.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
life browsers and allow the user to see the status even if other actions are taking
place. Removed webClient use from the browser; instead try sequentially to navigate
to all Uris until one succeeds; this avoids sending duplicate requests and allows
the user to see all endpoints tried out. Reworked the WebBrowser event handlers
to ensure the UI reflects correctly the browser state.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
about:blank instead. Removed parameter null check as it is done by PlaceholderRegex.Replace.
Minor tidy up.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Moved NavigateError- and AuthenticatinPromptEventArgs classes inside WebBrowser2
as they are only relevant to the latter class.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Created a new base class for the Notifications pages (Alerts, Updates, Events). This can be used in the future to host more of the common code between these pages. For now, it implements a common mechanism for showing/hiding the page and ensures that the event handlers are deregistered when the page is hidden (i.e. when the user switches to a different view) and registered again when the page becomes visible
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
is not agile simply by hovering over the cell. Previously the user could see
this only if they selected the VM, expanded the restart priority dropdown
and hovered over the Restart item.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* L10n: Inverness: build_chm #24
* Revert "L10n: Inverness": This reverts commit 8b41bb8c79cd4d73ed6021a5533cf7624a5421c4.
* L10n: Inverness: CHMs from build_chm master-l10n #24 Second attempt at checkin with a merge conflict resolve. (I hope)
* L10n: Localized files with fix: Remove artifacts introduced by XTM
* Update Kolkata Help files
* Update fro broken links fix
* CP-28648: Check -in the Lima versions of the CHM files
Signed-off-by: Katherine Shann <katherine.shann@citrix.com>
or being enabled. Although the CLI allows it, it makes sense to disallow deleting the pool
when HA is on because XenCenter does not offer enabling HA if there is no pool there.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
launches a dialog requiring user input, but added it to fcToolStripMenuItem
too because it looks symmetric and in any case the user does have to close
an error pop-up if the scan fails). Also, do not show "no SRs found pop-up"
if the user cancels the IscsiDeviceConfigDialog.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>