- The pool/host unpatched icons should be shown only when the pool is not fully updated.
- Repo config dialog: added icon on the list to differentiate pools from standalone hosts.
- Use different icons for client and LCM server updates.
- Added icons to the Config Updates dialog.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Last sync date was not shown for standalone hosts.
- Unlocalised string and incomplete release info.
- Converted Synchronise button to a split button to synchronize all/selected pools.
- Update the label above the updates from CDN page when filters are on.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Alert sorting was not correct.
- A dismissal request was sent to the server even if there were no server side messages to dismiss.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Show sync status for the pool in its Updates section.
- Moved update date for the host from the Version to the Updates section.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Also ensure there is a warning icon in the status column when hosts has trial with expired css in post preview
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
- Use `Nullable.HasValue` and `Nullable.Value` to handle `DateTime?` type returned by `LicenseCssExpiry`
- Check UTC time when checking CSS license expiry
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also:
- Increase size of `LicenseManager` to accommodate larger text
- Add upsell URL to existing warning for pool size restrictions
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
If pool any of the hosts in a pool hit the `HOST_NOT_ENOUGH_FREE_MEMORY` when calling `VM.assert_can_migrate`, XenCenter would prevent migration even if other hosts had enough memory to accommodate the VM.
Likely a result of the fact that other `VM.assert_can_migrate` failures are a consequence of pool-wide configurations. This is an exception.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
This avoids having too many timers running at the same time.
One could for instance update the `EnableRDPPolling` property from the `Options` dialog and start several concurrent `Timer`s
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
This prevents `AccessViolationException`s being called, as they're hit when two instances of `AxMSTSCLib.AxMsRdpClient9` call `Connect` on the same IP + Port combination, which results in the same memory being accessed in unmanaged code.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
The `Connect` method returns `E_FAIL` if it is called while the control is already connected or in the connecting state. This can be hit when a lot of connections are being opened at the same time, and it's there as a failsafe.
Also adds `IsAttemptingConnection` as a new field
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
The reason this wasn't added to the `AxMsRdpClientX` classes is that I thought it best to not touch `AxMSTSCLib` classes as they are likely generated.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
- The checkbox should be above the credential textboxes.
- Some controls were not aligned correctly.
- Place the controls in tableLayout panels.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Ensure `UpgradeRequiresEUA` runs for Yangtze or greater hosts
- Group non-manual checks in same if block
- Remove unused field in `EuaNotFoundProblem`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also:
- Add `HostDoesNotHaveHotfixWarning` warning to EUA `Check` when necessary
- Filter our `null` EUAs before passing them to the `Problem`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also:
- Remove unused `button_click` event handler in `AcceptEuaDialog`
- Load EUAs within the `UpgradeRequiresEua` `Check` and removed the spinner from `AcceptEuaDialog`
- Remove `_errors` from `AcceptEuaDialog`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Adds a new field in `SelectMultipleVMDestinationPage`: `AllSelectedTargets`.
This new field contains a list of all hosts that have been selected. This way `ImportSelectHostPage` can check for each `Host` that has been selected individually and add more relevant messages
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also, moved the filter indication label from the Alerts/Updates/Events page
to the main window because the Updates page top toolstrip looked too clattered.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
The check DundeeOrGreater always returns true since we disallow connection to anything earlier than Havana.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Adding a disk on local SR to an HA protected VM was crashing.
- The user could not plug the disk to the VM even after providing credentials on the role elevation dialog.
- The user had to enter credentials for each of the sub-actions involved in adding a disk.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Tidy up `SelectMultipleVMDestinationPage.cs`
* CA-375532 & CA-336510: Add warning when importing VMs with too many vCPUs
* CA-375532 & CA-336510: Prevent users from starting appliance if a VM has too many vCPUs
* Tidy up `Page_CpuMem`: use expression-bodied properties
* Tidy up `Page_CpuMem`: use conventional naming scheme
* Tidy up `Page_CpuMem`: use explicit modifiers
* Tidy up `Page_CpuMem`: use `en-US` locale for names
* Tidy up `Page_CpuMem`: use `var` when possible
* Tidy up `Page_CpuMem`: rename `Vcpus` to `VCpus`
* Tidy up `Page_CpuMem`: reorder elements
* Tidy up `Page_CpuMem`: revert class renaming and fix `vCpus` typos
* CA-375532: Prevent users from starting VM if they select too many vCPUs
* Tidy up `Page_Finish`: use expression-bodied properties
* Tidy up `Page_Finish`: fix typo
* Tidy up `Page_CpuMem`: rename `CanStartVM` to `CanStartVm`
* Remove unnecessary using directives
* Anchor warning icon to the top-left corner of its parent
* CA-375532 & CA-336510: Warn users when selecting more vCPUs than pCPUs in the Properties page
* CP-41825: Add warning for imported VMs with > 32 vCPUs
* CP-41825: Add warning for new VMs with > 32 vCPUs
* CP-41825: Add warning for existing VMs when selecting > 32 vCPUs
* CP-41825: Update wording used to alert users running VMs with > 32vCPUs
* Remove unused local variable in `VappStartCommand.cs`
* Reword some vCPUs messages
* Simplify assignment of `CanStartImmediately` in `Page_Finish.cs`
* Simplify assignment of `CanStartVmsAutomatically` in `ImportFinishPage.cs`
* Remove useless `Count` check in `VappStartCommand`
* Rename `pictureBox1` to `warningPictureBox` and change its `SizeMode`
* Separate CPU and memory warnings in `Page_CpuMem`
* Shorten warning messages shown in `Page_CpuMem`
* Disable option to start VM when memory configuration isn't valid
* Report number of vCPUs and pCPUs when showing warning in New VM wizard
* Tidy up `CpuMemoryEditPage`: rename elements
* Tidy up `CpuMemoryEditPage`: use explicity modifiers
* Tidy up `CpuMemoryEditPage`: Rename `CPUMemoryEditPage` to `CpuMemoryEditPage`
* Tidy up `CpuMemoryEditPage`: Miscellaneous renames and improvements
* Tidy up `CpuMemoryEditPage`: Fix whitespace
* Tidy up `CpuMemoryEditPage`: Use ReSharper code formatter
* Tidy up `CpuMemoryEditPage`: Move events to own region
* Tidy up `CpuMemoryEditPage`: Move `IEditPage` members to own region
* Tidy up `CpuMemoryEditPage`: Order members outside of regions
* Replace topology and vCPU warning labels with structured warnings
* Ensure warnings ends with a dot
* Allow multiple CPU warnings to show at the same time
* Remove warning link for vCPUS > pCPUS Option is not achievable
* Enable option to force unit used in `MemorySpinner`
* Replace `NumericUpDown` with `MemorySpinner` and show warnings at bottom of control
* Check destination pCPUs count when destination is not a pool
* Do not disable option to start VMs after import if user selects a shared SR
* Add memory warning when importing appliance with too much memory
* Sort vCPUs and memory warning strings
* Remove target from `ImportWizard`'s summary
Target is not useful and can cause confusion as appliance VMs could start on non-target hosts
* The home server is needed in the summary when importing XVA. The target server is not needed in the summary when migrating a VM.
* Update warnings when the server selection changes. Corrected memory calculation.
* Show all warnings for vCPUs. Moved topology warning to the bottom. Separated methods for showing memory and vCPU warnings.
* Removed the memory setting from the VM Properties dialog. Split running VM info to a separate panel.
* Corrections to the logic for starting the VM automatically. Also, Fixed a bit the layout of the Finish page to make better use of the available space.
* Corrections as per code review.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Co-authored-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Prevent `long` overflow when VM has a very large amount of memory. Resulted in XenCenter hanging with a significant memory leak.
* Remove unused `label` parameter from `LabelShouldBeShown`
* Use `double` for increment variable when calculating increments in `ShinyBar`
* Use `Debug.Assert` call to avoid issues with `DrawGrid` in `ShinyBar`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
RBAC check sometimes runs after the action that is being checked. This results in the status bar being cleared if the RBAC check passes.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>