Commit Graph

778 Commits

Author SHA1 Message Date
Alexander Schulz
5500de0757 Working build with latest changes from https://github.com/xenserver/xenadmin December 2023 2023-12-30 19:56:51 +01:00
Alexander Schulz
1ec327dc06 Mergeconflicts resolved, it builds again! 2023-12-30 18:58:02 +01:00
Alexander Schulz
cd477a4e18 Merge branch 'master' of https://github.com/xenserver/xenadmin into development
# Conflicts:
#	Branding/Branding.resx
#	Branding/HomePage.mht
#	Branding/HomePage.zh-CN.mht
#	Branding/Images/000_XenCenterAlerts_h32bit_24.png
#	Branding/Images/DlgBmp.bmp
#	Branding/Images/XS.png
#	Branding/Images/about_box_graphic_423x79.png
#	Branding/Images/alerts_32.png
#	Branding/Images/splash.bmp
#	Branding/Images/upsell_16.png
#	Branding/Images/wizard_background.png
#	CFUValidator/CFUValidator.csproj
#	Jenkinsfile
#	LICENSE
#	MAINTAINERS
#	README.md
#	WixInstaller/XenCenter.wxs
#	WixInstaller/branding.wxi
#	WixInstaller/codepagechange.vbs
#	WixInstaller/en-us.wxl
#	WixInstaller/ja-jp.wxl
#	WixInstaller/wix_src.patch
#	WixInstaller/zh-cn.wxl
#	XenAdmin.sln
#	XenAdmin/Commands/Controls/ContextMenuBuilder.cs
#	XenAdmin/Commands/Controls/MigrateVMToolStripMenuItem.cs
#	XenAdmin/Commands/Controls/VMLifeCycleToolStripMenuItem.cs
#	XenAdmin/Commands/CopyTemplateCommand.cs
#	XenAdmin/Commands/CopyVMCommand.cs
#	XenAdmin/Commands/CrossPoolCopyVMCommand.cs
#	XenAdmin/Commands/CrossPoolMigrateCommand.cs
#	XenAdmin/Commands/CrossPoolMoveVMCommand.cs
#	XenAdmin/Commands/DragDropCrossPoolMoveHaltedVMCommand.cs
#	XenAdmin/Commands/DragDropMigrateVMCommand.cs
#	XenAdmin/Commands/MoveVMCommand.cs
#	XenAdmin/ConsoleView/VNCTabView.cs
#	XenAdmin/Core/Updates.cs
#	XenAdmin/Dialogs/AboutDialog.resx
#	XenAdmin/Dialogs/LegalNoticesDialog.cs
#	XenAdmin/Dialogs/WarningDialogs/LicenseWarningDialog.ja.resx
#	XenAdmin/Dialogs/WarningDialogs/LicenseWarningDialog.resx
#	XenAdmin/Dialogs/WarningDialogs/LicenseWarningDialog.zh-CN.resx
#	XenAdmin/Help/HelpManager.cs
#	XenAdmin/Images.cs
#	XenAdmin/MainWindow.Designer.cs
#	XenAdmin/MainWindow.cs
#	XenAdmin/MainWindow.ja.resx
#	XenAdmin/MainWindow.resx
#	XenAdmin/MainWindow.zh-CN.resx
#	XenAdmin/Properties/Resources.Designer.cs
#	XenAdmin/Properties/Settings.Designer.cs
#	XenAdmin/Properties/Settings.settings
#	XenAdmin/SettingsPanels/BootOptionsEditPage.cs
#	XenAdmin/TabPages/GeneralTabPage.Designer.cs
#	XenAdmin/TabPages/GeneralTabPage.cs
#	XenAdmin/TabPages/GeneralTabPage.resx
#	XenAdmin/VNC/VNCException.cs
#	XenAdmin/Wizards/CrossPoolMigrateWizard/CrossPoolMigrateDestinationPage.cs
#	XenAdmin/Wizards/CrossPoolMigrateWizard/CrossPoolMigrateWizard.cs
#	XenAdmin/Wizards/CrossPoolMigrateWizard/Filters/CrossPoolMigrateCanMigrateFilter.cs
#	XenAdmin/Wizards/NewNetworkWizard_Pages/NetWTypeSelect.cs
#	XenAdmin/Wizards/NewSRWizard.cs
#	XenAdmin/Wizards/NewSRWizard_Pages/Frontends/LVMoISCSI.cs
#	XenAdmin/XenAdmin.csproj
#	XenAdmin/app.config
#	XenAdminTests/ArchiveTests/ArchiveFactoryTests.cs
#	XenAdminTests/ArchiveTests/ArchiveIteratorTests.cs
#	XenAdminTests/ArchiveTests/ArchiveWriterTests.cs
#	XenAdminTests/ArchiveTests/ThirdPartyArchiveWriterTests.cs
#	XenAdminTests/CompressionTests/CompressionFactoryTests.cs
#	XenAdminTests/CompressionTests/ThirdPartyCompressionStreamTests.cs
#	XenAdminTests/HealthCheckTests/RequestUploadTaskTests.cs
#	XenAdminTests/UnitTests/CPUMaskingTest.cs
#	XenAdminTests/UnitTests/TimeUtilTests.cs
#	XenAdminTests/UnitTests/WlbTests/WlbPoolConfigurationTests.cs
#	XenAdminTests/UnitTests/WlbTests/WlbScheduledTaskTests.cs
#	XenAdminTests/UnitTests/WlbTests/WlbScheduledTasksTests.cs
#	XenAdminTests/XenAdminTests.csproj
#	XenModel/Actions/HealthCheck/GetHealthCheckAnalysisResultAction.cs
#	XenModel/Actions/HealthCheck/HealthCheckAuthenticationAction.cs
#	XenModel/Actions/HealthCheck/UploadServerStatusReportAction.cs
#	XenModel/Actions/HealthCheck/XenServerHealthCheckUpload.cs
#	XenModel/Actions/VM/ImportVmAction.cs
#	XenModel/Actions/VM/VMCrossPoolMigrateAction.cs
#	XenModel/Actions/VM/VMPauseAction.cs
#	XenModel/FriendlyNames.Designer.cs
#	XenModel/FriendlyNames.ja.resx
#	XenModel/FriendlyNames.resx
#	XenModel/FriendlyNames.zh-CN.resx
#	XenModel/HealthCheckSettings.cs
#	XenModel/InvisibleMessages.Designer.cs
#	XenModel/InvisibleMessages.ja.resx
#	XenModel/InvisibleMessages.resx
#	XenModel/InvisibleMessages.zh-CN.resx
#	XenModel/Messages.Designer.cs
#	XenModel/Messages.ja.resx
#	XenModel/Messages.resx
#	XenModel/Messages.zh-CN.resx
#	XenModel/SshConsole.cs
#	XenModel/Utils/Helpers.cs
#	XenModel/XenAPI-Extensions/SR.cs
#	XenModel/XenAPI/ApiVersion.cs
#	XenModel/XenModel.csproj
#	XenServerHealthCheck/Registry.cs
#	scripts/check_copyright.ps1
#	scripts/check_i18n.ps1
#	scripts/check_spelling.ps1
#	scripts/deps-map.json
#	scripts/dictionary.txt
#	scripts/download_hotfixes.ps1
#	scripts/download_packages.ps1
#	scripts/hotfix-map.json
#	splash/util.h
#	xe/Xe.csproj
#	xe/app.manifest
2023-12-30 16:43:15 +01:00
Danilo Del Busso
93da92f1bc
Merge pull request #3250 from xenserver/feature/64-vcpus
Merge full 64 vCPUs support
2023-11-01 11:39:55 +00:00
Konstantina Chremmou
7b41c3a82c Hide from designer TabPage properties that are not meaningful at design time. Minor tidy up.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-10-25 11:02:30 +01:00
Danilo Del Busso
afb419af04
CP-44767, CP-44766 & CP-44765: Refactor usage of VM restrictions and add reference_label to OVFs (#3211)
* Tidy up `VM` extension: use `var`
* Tidy up `VM` extension: remove redundant initialisers
* Tidy up `VM` extension: use type keywords when possible
* Tidy up `VM` extension: merge conditional expressions
* Tidy up `VM` extension: remove redundant qualifiers
* Tidy up `VM` extension: remove redundant type arguments
* Tidy up `VM` extension: remove redundant `else`s and parentheses
* Tidy up `VM` extension: fix naming
* Tidy up `VM` extension: misc changes
* Tidy up `VM` extension: use `null` propagation
* Tidy up `VM` extension: fix whitespace
* Tidy up `VM` extension: apply ReSharper Code Cleanup utility
* Tidy up `VM` extension: Fix naming of private string array
* CP-44767: Ignore VM restriction when fetching `MaxVCPUsAllowed`
Instead, fetch the highest available value in all templates for the host.
This means that VMs imported from vhd won't automatically default to `DEFAULT_NUM_VCPUS_ALLOWED`, and that VMs that have been kept across XenServer upgrades won't be limited to the number of vCPUs in their own (possibly outdated) restrictions
* CP-44766: Use value in template with a matching `reference_label` when checking VM restrictions
* Move restriction getters to own region
* CP-44766: Use matching templates to fetch VM restrictions
- Rewrite `GetRestrictions...` methods to perform simpler operations
- Add `GetIntRestrictionValue` and `GetBoolRestrictionValue` wrappers to `GetRestrictionValueFromMatchingTemplate`
- Now all calls to a restrictions first check the template value, with a fall-back to defaults
* CP-44765: Export `reference-label` when generating OVFs
---------

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-09-29 03:45:17 +01:00
Konstantina Chremmou
78073c7123 Missing null check.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-09-07 15:24:20 +01:00
Danilo Del Busso
bba9f43c31
CA-376887: Refactor thread management for ArchiveMaintainer (#3148)
* Tidy up `ArchiveMaintainer`: use naming conventions
* Tidy up `ArchiveMaintainer`: use `var` when possible
* Tidy up `ArchiveMaintainer`: fix typos
* Tidy up `ArchiveMaintainer`: move action methods in own region
* Tidy up `ArchiveMaintainer`: apply code formatting
* Tidy up `ArchiveMaintainer`: remove unused constant/using
* Tidy up `ArchiveMaintainer`: group methods into regions
* Tidy up `ArchiveMaintainer`: remove xmldocs
* Tidy up `ArchiveMaintainer`: miscellaneous changes
* Tidy up `ArchiveMaintainer`: move `NextArchiveDown` to correct `region`
* CA-376887: Use multiple threads to load performance tab data
This commit removes the ad-hoc use of `Thread` and instead relies on `ThreadPool` and `CancellationToken`s to handle multi-threading. To achieve this, `ArchiveMaintainer` instances are now tied to only one `XenObject`. If a user navigates to another Performance tab, a new instance of `ArchiveMaintainer` is used. This enables XenCenter to quietly cancel ongoing data fetching operations, and start a new one without affecting the UI. UI elements are simply updated to point to the new `ArchiveMaintainer` while the old one is being  closed.
Please note that follow up commits to clean up `ArchiveMaintiner` and this implementation are coming. They have been separated to make reviews easier
* CA-376887: Move initial load logic to separate method in `ArchiveMaintainer`
* CA-376887: Rename `Update` to `StartUpdateLoop` in `ArchiveMaintainer`
* CA-376887: Fix use of `Dispose` in `PerformancePage` and collapse `Stop`/`Pause` into one method
* CA-376887: Remove unused `FirstTime` variable
* Tidy up `ArchiveMaintainer`: use `switch` when possible and improve logging
* Tidy up `ArchiveMaintainer`: Move variables inline
* Tidy up `ArchiveMaintainer`: Standardize fields/properties
* Tidy up `ArchiveMaintainer`: Normalize whitespace
* CA-376887: Ensure only one thread is spawned for each `ArchiveMaintainer`
- Ensures resources are disposed of
- Fixes issues whereby quickly starting and stopping threads for the same `XenObject` `ArchiveMantainer` would cause threads from not exiting
* Improve formatting and whitespace in `ArchiveMaintainer`
* Improve logging of exceptions in `ArchiveMaintainer:Get`
* Fix `ServerNow` calls in `ArchiveMaintainer`
* Deregister `ArchiveMaintainer` events when a new one is reassigned.
Also rename methods
* Apply code review suggestions

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-09-07 10:03:43 +01:00
Konstantina Chremmou
89fd16b903 CP-45097: Show product brand alongside the version on the General and Search tabPage.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-09-04 10:32:18 +01:00
Konstantina Chremmou
de1120f18b
More fixes including CA-381728, CA-381618, CA-381225 (#3205)
* CA-381728: If no post-update tasks exist, XenCenter should explicitly state so.

Also, livepatches should be shown if other guidance is absent.

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

* Missing placeholders for building locally without applying branding.

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

* Missing help links.

Also removed scripts that are not used any more.

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

* CA-381618: The HA/WLB off check is a pool, not a host check.

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

* CA-381225: Corrected order of running update guidance (also uses input from CA-381718).

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

* UPDATES_URL has been renamed to XC_UPDATES_URL.

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

---------

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-21 13:35:49 +01:00
Konstantina Chremmou
e4b2b67cf5
Merge pull request #3198 from kc284/master
UX improvements: CA-381442, XSI-1476, CA-375740
2023-08-18 10:35:05 +01:00
Konstantina Chremmou
fdd5ca775a
Merge pull request #3202 from kc284/supp-pack
Wording change; corrections for supp-pack installation.
2023-08-17 18:45:26 +01:00
Danilo Del Busso
fbdcf5f5de CA-381678: Fix misc wording issues in ManageCdnUpdatesPage export file
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-08-17 18:44:39 +01:00
Konstantina Chremmou
a98a1353c4 Applied supp-packs were not shown at pool level for new servers.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-17 12:50:57 +01:00
Danilo Del Busso
b9f2779c7e
CA-381500: Use custom wording for post-Nile license status in the General Tab
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-08-16 15:34:45 +01:00
Danilo Del Busso
1f7fbc017c
CA-381500: Revert renaming of Status to Expiry status
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-08-16 15:34:43 +01:00
Danilo Del Busso
0680d9cba0
CA-381500: Ensure unlicensed hosts post Nile do not show as such in General Tab Page
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-08-15 09:23:35 +01:00
Konstantina Chremmou
2a81e63eba Use different image for the RPM packages to distinguish them from the updates.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-15 02:07:35 +01:00
Konstantina Chremmou
e4012a7bd5
Merge pull request #3194 from xenserver/master
Master->feature/cdn-updates
2023-08-09 14:20:55 +01:00
Konstantina Chremmou
2af72aae25 Separate client updates from lcm server updates so they don't appear on the Notifications tab page.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-09 13:54:15 +01:00
Konstantina Chremmou
9d8805f060 Improved exported updates output and manual post-update instructions.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-09 13:54:15 +01:00
Konstantina Chremmou
6eaff6dc54 Rewrote the update application sequence to fix various issues:
- CA-380799: Host evacuation is not needed when the guidance is toolstack restart.
- CA-380796: Sometimes the guidance was applied before the update installation.
- Livepatch notice should be shown only if guidance is not reboot host.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-09 13:54:15 +01:00
Konstantina Chremmou
03eb2f08d1 Various corrections:
- Added pool name in the action descriptions.
- Fixed host order on the updates list.
- Synchronize selected was not working for standalone hosts.
- Removed stray call to save settings.
- Null check.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-09 13:53:21 +01:00
Konstantina Chremmou
0045ca9d0b Added a column on the Updates TabPage to show the configured updated channel.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-09 13:53:21 +01:00
Konstantina Chremmou
4d0d232b19
Merge pull request #3192 from danilo-delbusso/dev/update-invisible-messages
Update `InvisibleMessages`
2023-08-08 14:47:57 +01:00
Konstantina Chremmou
9a006f3fbf CA-380723: Do not allow sync if an update repo is not configured.
Also, corrections to the sync button/link enabled state.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-07 15:15:38 +01:00
Konstantina Chremmou
d609514469 Minor code improvements.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-07 15:15:38 +01:00
Konstantina Chremmou
b5e843c53d Added link label at the top of the LCM updates list to make it easy to re-enable any disabled automatic update checks.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-07 15:15:38 +01:00
Konstantina Chremmou
ca3ed31136 Updated the text and URL for the license server link.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-07 12:26:13 +01:00
Danilo Del Busso
f92de90548
Replace usages of FCOE deprecation URL with generic deprecation URL
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-08-07 12:18:25 +01:00
Konstantina Chremmou
ae81d5738a CP-43267: Apply updates from CDN
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-01 13:56:54 +01:00
Konstantina Chremmou
87f1fa3e81 CP-43266: Account for live patches in the update list.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-08-01 13:56:54 +01:00
Konstantina Chremmou
98165b9f02 CP-44285: Added new hotfix type Foundational.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-07-31 23:18:04 +01:00
Konstantina Chremmou
c4892897dd Several corrections:
- 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>
2023-07-31 23:18:04 +01:00
Konstantina Chremmou
60284077e3 CP-43266: Added new notifications page to list updates from CDN.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-07-31 11:33:25 +01:00
Konstantina Chremmou
a557d83397 Alert the user if they haven't synced in a long time. Also:
- 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>
2023-07-31 11:33:25 +01:00
Konstantina Chremmou
2774ea5c7f Show update status for pools and hosts on the General tabPage:
- 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>
2023-07-31 11:33:25 +01:00
Konstantina Chremmou
b0c23a2c36 Merge remote-tracking branch 'upstream/master' into feature/cdn-updates
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>

# Conflicts:
#	XenAdmin/Properties/Resources.resx
2023-07-31 11:03:23 +01:00
Konstantina Chremmou
fcc51a0c2d CP-43264: Handle new alert for CSS agreement expiry. Also:
For alerts that have an action link show this before the dismiss item.

Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-07-24 21:21:48 +01:00
Danilo Del Busso
461b6c97b5
CP-43000: Fix Post82X call in Host extension
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-07-24 15:52:21 +01:00
Danilo Del Busso
6fa8cfa10b
CP-43000: Update link and text shown in the hosts' general tabs
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-07-19 15:55:37 +01:00
Konstantina Chremmou
a422eb9986
CP-43000: Moved the Buy Licenses link to a different column.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-07-19 15:54:16 +01:00
Konstantina Chremmou
f9198e477d
Added option for three columns on the GeneralTabPage panels. Refactored methods adding entries.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-07-19 15:54:13 +01:00
Danilo Del Busso
b8a3a7cdeb
CP-43000: Add trial edition and CSS expiry warnings to GeneralTabPage
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-07-19 15:54:04 +01:00
Konstantina Chremmou
d2fc98a00b Removed unused using directives.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-06-13 14:48:23 +01:00
Konstantina Chremmou
7e78dc898c CP-41473: Restore installation of server updates on the Patching and RPU wizards.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-06-13 14:48:23 +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
6bed1dcde3 CP-41473: Restored options to check for server updates and new versions automatically.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-06-13 14:48:23 +01:00
Konstantina Chremmou
d599bf4024 CP-43102: Only allow connections to Havana and Naples or greater servers.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.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