Further changes
* implemented similar logic for the Commands too as those are keep on getting updates so affected
* moved these static fields to a class (at Images)
* used the same casing as in Resources once they have been moved
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Changed code at a a few places where it made sense to limit how many times XenCenter asks the Resource Manager for a new instance(*1) of the same(*2) image.
*1: RM returns a new object each time
*2: they are the same as we don't change the locale of a thread and also we don't localise these images - by design
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Set the suppressHistory flag to true for the parallel action that we run periodically to check the Health Check analysis result
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
If windows_update is in the hidden features registry key, then we hide the virtualization state line about Windows update.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Partially upgraded pools are not supported. If the versions of servers mismatch in a pool, Automatic updating will be disabled with the appropriate info message.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
even when automatic mode was supported for them. The problem was that the xenserver
versions were not retrieved from the DownloadUpdatesXmlAction once the latter had run.
Also, minor refactoring.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
If there is no <minimalpatches /> tag, the version is not supported. This check has priority over licensed state when displaying the reason why a server is not supported.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
in the calculation of the never-expiring licence ("greater than 3653 days" in
LicenceAlert and LicenceStatus vs "greater than or equal to 3653 days" elsewhere).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Despite the update sequences are correct by host, when they are flattened, the original order (order in minimal patches) was not considered properly, so a missing patch was scheduled for later in the sequence than it should have been, thus the upgrade failed with a precheck-error.
This bug occurs when we are given
* a pool of more than one host,
* with (at least) patchA not installed on 2 or more hosts
* patchA requires patchR that is not installed on at least one of the above hosts (but not not on all)
* the host that is missing patchR is ahead of other hosts in pool.Hosts.Cache
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Added Registry.ProxyAuthenticationEnabled boolean property to enable/disable proxy authentication UI controls in Connection Options page.
Cleaned up event handler logic in Connection Options page to return from multiple/unnecessary calls to event handlers when manually changing controls through code.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Assigned Proxy property in all WebClient, WebRequest and HttpWebRequest instances.
Removed "proxy not supported" message from Download Appliance dialog, since the download does work with a proxy.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Showing recommended* hotfixes for servers when the data is available (Check For Updates xml has been downloaded and has minimalPatches node in it for the given server version). *:Not applied ones from the minimal set.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Added support for defining custom update.xml location in Registry. This
can be either a local file or an URL. This will be beneficial when testing XenCenter.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Disableded non-required pages in the wizard
Added placeholder for new pages
Changed sequence of pages
Removed unnecessary code
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed code to treat uuids of patches case-insensitive when consuming, but not changing them (eg. to lowercase) to keep compatibility with older XAPIs.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- InvisibleMessages.resx contains the default url for check for updates, which can be overwritten in Branding.cs
- Added an extra parameter to DownloadUpdatesXmlAction for the updates url. If this is not specified (or null), then the default one (from InvisibleMessages) is used
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Removed unnecessary reversing of lists and fixed code to start with SP. (None of these have not been causing problems, but they are not needed)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- When the installer writes HiddenFeatures registry entry, it specifies registry key HKMU, that means that it will be written in HKLM if the user selected "All Users" for installation, or to HKCU if the user selected "Just Me".
- Added a new function to read an installed key by trying CurrentUser first, then Local Machine.
This function specifies a registry view (RegistryView.Registry32) when it opens the key (On the 64-bit version of Windows, portions of the registry are stored separately for 32-bit and 64-bit applications. There is a 32-bit view for 32-bit applications and a 64-bit view for 64-bit applications).
Signed-off-by: Mihaela Stoica <Mihaela.Stoica@citrix.com>
Updated the GetLocation extension method for ActionBase objects to return action.Connection.FriendlyName should it have no Host or Pool set up. This way we see location for MeddlingActions.
Also changed some messages (Task Names) to include "VM" in them too, because xe command line initiated VM lifecycle actions looked really misleading after the above fix in XenCenter (Eg. restarting a VM would show up as "Restarting", "server" which would suggest that not just the VM, but the host is being restarted.)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- This fixes the uncaught exception raised when an unauthorized user tries to restore dismissed updates.
- Also added the roles check when dismissing updates.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- vendor check is not needed in the functions where we check whether to warn the users about different feature levels, as the pool join is not allowed if the vendors are different
- renamed some of the functions
- feature comparison is now done eight characters at a time, converted into a 32-bit integer
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Changed all the health check actions to perform the necessary role checks
- HealthCheckAuthenticationAction: changed so it does not save the tokens, so no role checks required in this action (all the checks are performed in SaveHealthCheckSettingsAction)
- GetHealthCheckAnalysisActions: added role checks
On the Health Check Overview dialog, a pool is displayed as read-only if connected as a user with roles that don't permit changing the health check settings:
- the following actions are not available: enroll, edit settings, disable health check, request upload, get analysis result
Improves the centering of the warning messages in the Updates Tab, making the picture align with the text.
Corrects bug related to the visibility of the warning about automatic checks for updates.
- Suppress reporting of success and failure for sub-actions:
The suppress history flag is set when the action is created and if is false (by default) the action is added to the history (the Events list).
In order to suppress history for the subactions, we need change all actions used in Edit pages so their constructor can set the SuppressHistory flag and then use these constructors with suppressHistory = true on all the implementations of IEditPage.SaveSettings() where an action is created
(then we need to remember to do the same everytime we introduce a new page and / or "save" action).
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>