Commit Graph

700 Commits

Author SHA1 Message Date
Konstantina Chremmou
6d83365cfc Merge branch 'master' into feature/merge
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

# Conflicts:
#	XenAdmin/Dialogs/PropertiesDialog.cs
2023-06-13 15:08:36 +01:00
Konstantina Chremmou
0c1ace1aaf CP-41473: Restored the Notifications>Updates TabPage.
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>
2023-06-13 14:48:23 +01:00
Konstantina Chremmou
02ded9ba71 CP-41474: Added setting on the Options dialog to import a client ID for downloading hotfixes for LCM servers.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-06-13 14:48:23 +01:00
Konstantina Chremmou
2909a4996d Protected loggers do not log the class where the method is correctly.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-06-13 14:48:23 +01:00
Konstantina Chremmou
82940850e9 CP-43102: Removed Dundee code.
The check DundeeOrGreater always returns true since we disallow connection to anything earlier than Havana.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2023-06-13 14:48:23 +01:00
Danilo Del Busso
6c584bb351
CA-375532, CA-336510, and CP-41825: Add warnings when user selects too many vCPUs (#3119)
* 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>
2023-06-08 11:24:39 +01:00
Danilo Del Busso
77edbd3b1e
Prevent long overflow when VM has a very large amount of memory (#3154)
* 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>
2023-06-07 13:15:34 +01:00
Konstantina Chremmou
801125f448
Merge pull request #3137 from danilo-delbusso/dev/snapshot-crash-CA-375803
CA-375803: Catch exceptions when creating a new template from snapshot
2023-05-05 14:56:46 +01:00
Danilo Del Busso
1914a45869 Add missing reads/s unit mapping
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-05-05 14:53:58 +01:00
Danilo Del Busso
f16b0fed35
Revert IsCompleted checks
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-05-02 09:00:54 +01:00
Danilo Del Busso
113a427e6a
Collapse type checks in WlbOptimizePool
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-04-28 15:34:02 +01:00
Danilo Del Busso
30291cc3bd
CA-375803: Check if actions have succeeded before accessing action result
Also add check to non-relevant actions

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-04-28 10:06:18 +01:00
Konstantina Chremmou
a4df1eed61 New logic for connection to a xapi database and some connection tidy up:
- Removed event that had no subscribers.
- The xml docs are more useful on the properties and not their supporting private fields.
- Stop silencing cache errors as they may reveal other issues.
- Adding server to history was called twice.
- Connection null checks and refactoring of ConnectionExists exceptions.
- Added some logging.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-03-31 14:17:56 +01:00
Danilo Del Busso
dd571056ae CP-42286: Add friendly name for pool_session_creation_rate
Also adds new unit to `DataSet.cs`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-03-29 22:52:01 +01:00
Konstantina Chremmou
5828c03e8d CA-375173: Create the VDI and VBD records before closing the new disk dialog. Also:
Fixed issue where the SR was not preselected when editing an existing disk and no scans were taking place.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-02-28 15:36:13 +00:00
Danilo Del Busso
2678f70f83
Merge pull request #3091 from danilo-delbusso/datasources-CP-40157
CP-40157: Updates to `GraphDetailsDialog`
2023-02-13 14:04:52 +00:00
Danilo Del Busso
6f6bddd755
CP-40842: Remove CIS upload from Server Status Report wizard (#3087)
* Remove credentials controls from `BugToolPageDestination`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Explicitly call dispose in `BugToolPageDestination.cs`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Tidy up code in `BugToolPageDestination.cs`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Move `StatusReportRow` to its own file

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Move `ClientSideDataRow` and `HostStatusRow` to own files

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Update order of pages in `BugToolWizard`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Update action and create row for packaging status report in BugTool wizard

Instead of creating a new action, this males ZipStatusReportAction inherit StatusReportAction

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Allow for pending `StatusReportAction` to be cancelled

This avoids the need for a running action to update the status. i.e. an action that has been registered but hasn't started running can be cancelled, too.

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Update content of `ACTION_SYSTEM_STATUS_SUCCESSFUL` message

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Add link to `labelBlurb` in `BugToolPageRetrieveData.cs`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Add report packaging logic to `BugToolPageRetrieveData.cs`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Open CIS URL when clicking on `linkLabelBlurb`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* CP-40842: Report packaged data amount in `ZipStatusReportAction`

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Remove unused `using`s

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

* Minor layout tweaks.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Renamed folder and namespace to match the ones for the other wizards.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Renamed wizard's private fields. Some code efficiency corrections.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Keep the row classes as private within the BugToolPageRetrieveData class.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Removed leftover unused action.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Tidy up status report messages. Use more relevant icon.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Made blurb localisable.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Renamed private fields.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Simplified the stages of the compilation of the status report.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Renamed row classes again to match the action names.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Simplify reporting the progress of the zipping action.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

* Recursive call is not necessary. Tweaked message.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* Sort strings

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* Update copyright notices

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>

---------

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Co-authored-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Co-authored-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2023-02-13 13:47:21 +00:00
Danilo Del Busso
df908e5049
Add missing unit handling in DataSet
Fixes issue #3080

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-02-08 14:00:37 +00:00
Danilo Del Busso
e35dbe5ef7
CP-40157: Show some hidden datasources in GraphHelpers.cs
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-02-08 14:00:34 +00:00
Danilo Del Busso
fb2f10be33
CP-40157: Expose some hidden data sources to UI
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-02-01 10:23:42 +00:00
Konstantina Chremmou
d7b519a53c Updated copyright notice on files.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-01-30 16:24:16 +00:00
Konstantina Chremmou
a29eb998ae
Merge pull request #3065 from kc284/master
CP-41048: Add each SR to the SrPicker as soon as its scan finishes, without waiting for the other scans to finish.
2022-12-05 15:00:01 +00:00
Konstantina Chremmou
421831f312 CP-41048: Do not scan SRs automatically when adding to the SrPicker. Added button to scan on demand.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-12-02 00:55:27 +00:00
Konstantina Chremmou
1e44d42020 Check for unplugged PBDs when selecting SRs for placing a new disk or importing an XVA.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-11-30 13:28:44 +00:00
Konstantina Chremmou
e1c808eb8f Corrections as per code review.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-11-22 16:44:32 +00:00
Konstantina Chremmou
a77f3c3994 Corrections per code review.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-11-16 17:36:17 +00:00
Konstantina Chremmou
a3569aa875 CP-41048: Add each SR to the SrPicker as soon as its scan finishes, without waiting for the other scans to finish.
The scans run in parallel in batches of three to avoid flooding the session.
Also, prevent firing the SelectedIndexChanged event multiple times when populating the NewDisk dialog.
Renamed the SrPicker control on the latter (because SrListBox is a different type of control).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-11-15 16:48:53 +00:00
Konstantina Chremmou
167ccf4904 Moved colour definition close to where it is used. Fixed leak where new underline fonts where created but not disposed.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-11-11 14:10:31 +00:00
Danilo Del Busso
77bd034e8d
CA-359965: Consider physical_utilisation value when checking for free space in thinly provisioned SRs (#3028)
* CA-359965: Consider `physical_utilisation` value when checking for free space in thinly provisioned SRs

* CA-359965: Fix miscellaneous formatting issues

* Made SrPickerItem show the SR by default. Removed virtual method that was never overriden.

* Use slightly more intuitive name for property; also inverted its logic.

* Renamed VdiCreationCanProceed to the more specific CanFitDisks since it only deals with sizes.

* Re-arranged classes in file.

* Refactored SrPickerItem:

- Merged CanBeEnabled and DisabledReason properties to method CanBeEnabled(out disabledREason)
  to avoid running the same checks twice.
- Pass the disk instead of the size into extension method SR.CanFitDisks
  so that the correct size can be used for each storage (thin vs. non-thin provision).

* Correction as per code review and some tweaks to make the checks clearer and more efficient.

Signed-off-by: Danilo Del Busso <Danilo.Del.Busso@citrix.com>
Co-authored-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-10-11 09:26:54 +01:00
Konstantina Chremmou
940b1580b9 Fixes issue where the Finish page of the NewVM wizard was not showing the selected home server correctly. 2022-10-07 09:19:10 +01:00
Danilo Del Busso
c34a398cce CA-368958: Reset clip region once performance lines are drawn
Resetting the clip so that on the next render we don't hide labels and title.
Also moved logic outside `LineRenderer.cs`

Signed-off-by: Danilo Del Busso <Danilo.Del.Busso@citrix.com>
2022-07-21 14:28:43 +00:00
Danilo Del Busso
652845bc8f CA-368528: Fix performance data not being updated after a few seconds on VMs
Signed-off-by: Danilo Del Busso <Danilo.Del.Busso@citrix.com>
2022-07-19 13:42:22 +00:00
Konstantina Chremmou
bde23b23bf Fixed some code smells.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-06-16 11:21:42 +01:00
Konstantina Chremmou
e5d090d614 CP-39817: Removed the updates tab page.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-06-16 11:21:42 +01:00
Konstantina Chremmou
afa21f16a9
Merge pull request #3011 from kc284/CA-366140
CA-366140: Reverted original solution. Handled error thrown when retrieving datasources.
2022-05-25 11:04:51 +01:00
Konstantina Chremmou
76738ad91f
Merge pull request #3003 from kc284/drag-drop-3
CA-294370: Rewrote logic calculating if migration is allowed + some other fixes.
2022-05-25 11:04:26 +01:00
Konstantina Chremmou
dcbbbe84e9 CA-366140: Handle and log exceptions thrown when retrieving data sources.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-05-19 12:12:46 +01:00
Konstantina Chremmou
20cf55c19f Revert "CA-366140: Run data source operations on VMs only if they are allowed."
This reverts commit dd56f744e8.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

# Conflicts:
#	XenAdmin/Actions/GUIActions/SaveDataSourceStateAction.cs
2022-05-19 11:18:52 +01:00
Danilo Del Busso
4f09efe475
CA-293683: Prevent automatic scrolling when setting text in SmartScrollTextBox
Also fix issue whereby `IsVerticalScrollBarAtBottom` would also return `True`

Signed-off-by: Danilo Del Busso <Danilo.Del.Busso@citrix.com>
2022-05-16 15:33:52 +01:00
Danilo Del Busso
27382f308b
CA-293683: Prevent automatic scrolling in RPU wizard if user has scrolled manually
Signed-off-by: Danilo Del Busso <Danilo.Del.Busso@citrix.com>
2022-05-12 13:06:04 +01:00
Konstantina Chremmou
8699f8803f Prevent multiple evaluations of CanRun().
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-05-09 15:21:36 +01:00
Konstantina Chremmou
9b7d502e74 CA-329538: Tell the user to ensure tools are installed if a VM cannot be migrated via drag-and-drop.
Also, show the name of the VM in the various failure messages as drag-and-drop
may operate on multiple VMs.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-05-09 13:37:16 +01:00
Konstantina Chremmou
dd56f744e8 CA-366140: Run data source operations on VMs only if they are allowed.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-05-09 13:36:49 +01:00
Konstantina Chremmou
efb855a6e9 Modifications around VncView disposal:
- Do not dispose of the activeView when pausing the console (which happens
  when we move away from the console tab.
- When setting a new source, remove and re-add the activeView only when
  it has changed.
- Dispose an unneeded view immediately instead of starting a timer.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-21 11:28:18 +01:00
Konstantina Chremmou
456cd93db8 A VncView is created for both VNC and RDP, so I don't see why it should be disposed of for VNC only.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-21 11:28:18 +01:00
Konstantina Chremmou
0c1541985c Check for docking should happen outside the VncView's Pause() method.
Also, use Pascal case for property name to match C# conventions.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-21 11:28:18 +01:00
Konstantina Chremmou
3601ada1f6 Reduced the public interface of the console panel.
Methods exposing internal functionality like the timers should not be public.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-21 11:28:17 +01:00
Konstantina Chremmou
63c170310d Use Pascal case for method names to match C# conventions.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-21 11:28:17 +01:00
Konstantina Chremmou
9e8a8a77a5 Code style fixes. Removal of unused code.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-11 22:57:08 +01:00
Konstantina Chremmou
a35efa06aa CP-36392: Removed unnecessary statement:
The body of the setter never proceeds before the first line because value==_state
and the child's level has just been increased and is zero or greater.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2022-04-06 13:11:35 +01:00