Making the requested changes: Name is now sorted by the generic CompareTo method (which uses name with opaque ref as tiebreaker), and Description also uses opaque ref as tiebreaker for consistency.
XenCenter will check host.patches_requiring_reboot when a host restart is due while a batch update is in progress. If the restart is not required, XenCenter will skip relevant PlanActions.
The intention here is to check this whenever a restart is due according to the original schedule - this way a completely livepatchable update can prevent the restart while the key batch hotfixing logic is not changed.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Automatic is disabled if any pool forbids auto restart (per Neptune), and reboot is required. It's also disabled if the update type isn't one of the three in the switch statement. If it's enabled it is checked by default.
Change the sorting on the Name and Description columns to use StringUtility.NaturalCompare, which correctly sorts strings with numbers at the end (eg name, name0, name1, name2, name10 will now sort correctly while alphabetic sorting is incorrect). Also added a tie break on uuid to make sorting behave predictably with duplicates in these columns.
other than strings. Moved settings of the FullScreenForm from the VNCTabView to
the former class. The FullScreenFormof the VNCTabView is only initialised as
FullSCreenFrom so no casts are necessary. The FullScreenForm is responsible for
updating the connection bar text with the value obtained from the vncScreen everytime
the name of the connection changes. Also reduced visibility of certain members.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
to be shown. It is complicated to have the one control call a method in the other
which checks the state on the first control.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
If we are expecting to live patch, but at the end
hosts.patches_requring_reboot contains the patch, then warn the user that
live patching has failed for the host - and it needs to be rebooted.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
This commit implements the check for LiveUpdate capability of a patch. If
the patch is completely live-updatable, XenCenter will not restart the
host (but will do further checks once it has finished installing the
update - separate ticket)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Now using the EscapeAmpersands string extension method. Also resolved the custom fields display issue in the same way.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
The ticket said the character after the & became a hotkey (like labels etc do with UseMnemonic enabled) but I couldn't reproduce that - & symbols were simply removed from the string. The fix is to replace them with &&, so the string.format prints a single & as it should.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
the checks before the page is loaded. Corrected the conditions for enabling the
Previous and Next buttons on this page. This commit fixes broken RPU wizard test.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Comparing uuids instead of references that likely will be changed after the Cache has been repopulated.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- when the cd drive or the tools iso cannot be found, the action should fail.
- if the tools SR is broken, do not show the error on a pop-up because the UX is
bad when installation is attempted on multiple VMS.
- added one more entry to the list of possible tools iso names.
- small performance improvement.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Generalising to also support pools. New CheckHostPatchesRequiringReboot method with the same behaviour as old method (return list of KeyValue warning messages). Pool updates on Ely use the union of messages from this method instead of the old one. Also localised the "{hotfix} on {server}" string per todo (hence resx changes).
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
For servers running Ely or greater we now produce messages for patching requiring reboot using the host.patches_requiring_reboot field. The Pool_patch objects resolved are sufficient to produce the same messages. Note that some patches produce a message in the old API but not the new, this is intentional. Still to do: update pool updates in the same way,
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Now behaves as expected - alert interval (top control) has lowest tab stop, all other groups incremented by 1.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Instead of adding a second table layout panel for the rubric label, I have extended the original table to include two new rows at the top - one for the label rubric, and one for the repeat interval controls (previously not in the table).
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
The CancelHostConnectionCommand executes by using a DisconnectCommand, so the fix here is to allow that command to execute on connections in progress as well as those that are connected.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
By passing null as the srHost parameter to the affinity picker, the "no home server" radio button remains enabled, even when no shared SRs are available, allowing users to unset the home server of a VM
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Mostly just terminology changes from home server to target server in the CPM wizard. Changes in shared component SelectMultipleVMDestinationPage (shared with ImportWizard) to allow CPM wizard to rename the Home Server column (as it can the VM/template one - using the same pattern).
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
This is resolved by moving the label into a TableLayoutPanel, docked to the top and with auto-grow on.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
- Moved progress bar at the bottom of the page and made it the same height as on Upload page; This progress bar is now used when the prechecks are performed (existing functionality) and also for the "resolve" actions (new functionality).
- Added a label for displaying action progress.
- The icon and label saying that you need to resolve problems is hidden when there are no issues found and when an action is in progress (when the progress label is shown instead).
- When a resolve action is in progress, all controls on the page are disabled, apart from Cancel; pressing Cancel will cancel the "resolve" action and the wizard.
- Also put everything in a TableLayoutPanel (hence all the designer changes)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Add the Live Patching tab as a new part of PropertiesDialog, shown for pools and standalone hosts. Tab contains one checkbox which toggles the live_patching_disabled XenServer API property. Not yet implemented: license check ("The option should only be shown if the pool is licensed")
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>
- Added Control Domain memory entry in the host memory control on Memory tab.
- Control domain memory is editable for Ely and greater hosts.
- Can be changed from a dialog that requires host to be in maintenance mode and triggers a host reboot after the memory is changed.
- This dialog is available from Server main menu and from the host memory tab.
- Also removed unused unit controls on host and VM memory bars.
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
hotkeys; button enabled state; some memory leaks; added spinner while check for
updates is in progress; added alternative text for when automatic mode is not available.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Implemented pre-check to check whether there is enough free disk space
before starting updating a pool.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
more obvious to the user that they can edit it. To this purpose change the button
Properties to Edit (and do the same on the Networking page for consistence). Also
show the name of the disk (ellipsized if too long) on the wizard's finish page.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Add a new update to the list of uploaded updates only when the upload action has completed successfully.
- Do not perform the disk space check if there is nothing to upload (update has already been uploaded).
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
The PatchPrechecksOnMultipleHostsInAPoolPlanAction did not filter the patchmappings by masterhost, so with some probability, it could choose the wrong mapping (pool_patch object for the same update, but in different pool). This bug is being fixed in this commit, other changes only renamed (for more consistent naming) a class and removed an unused field.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- The "Alarm Settings" action on Alerts page should open host's properties dialog for Dom0 alerts
- Also added help id for the Control Domain Memory Usage alert
Removed unused properties.
Added new string resource to set the pvs farm dialog's title.
Extended XenAPI's PVS_farm class to override Name property to allow for simpler sorting code.
Removed embedded icon in resource file; dialog now inherits the application's icon.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Added event handlers for changes made to PVS server; it may end up calling Rebuild() twice but that's not a problem.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Even though the correct row have been selected by the time the grid becomes visible, it is not displayed properly. This change set fixes the problem by selecting the row again.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Bugs fixed:
* OK button not re-enabling when switching back to using existing credentials in Health Check Enrollment dialog
* Using empty credentials to authenticate with Citrix Insight Services does not disable OK button in Health Check Enrollment dialog
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
a selected item collection - there was no need to make temporarily each one of them
the command selection just to call CanExecute on them. (2) Do not mix the methods
returning the can't-execute-reasons (which can be unknown) with the tooltip property
(which can be null).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
to null, otherwise the wrond text is shown for items with null can't-execute-reason
that are selected after items with non-null can't execute reason.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
FolderBrowser dialogs. Fixed text which caused label to look unaligned. Prevent
crash when attempting to launch the DownloadAppliance dialog with "http://" as URI.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Changes following code review
- Made PVS tab localizable and added Chinese and Japanese resources
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
In the New Network wizard, when the "Single-Server Private Network" type is selected, the Network settings page should not display the MTU hint message, because it is not relevant to any controls on the page
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
title so we can tell the one from the other. For consistency I used a format similar
to Import/export XVA. I also removed the gerund from the latter as it cannot be
used when the action is completed.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
XenCenter no longer ignores checking if the master host already has the specified patch applied; it now checks before trying to apply it, which means we get no error in the Patching Wizard's Patching Page.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
- tab visible on pool or standalone server if the feature is not restricted and the pools has at least one farm
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* [CA-214953] Multiple connection dialogs while attempting to connect
ConnectingToServerDialog now keeps track of the dialogs for each connection and focuses on them if they already exist, instead of creating new ones.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
* [CA-214953] Multiple connection dialogs while attempting to connect
Moved code to handle open connection dialogs to XenConnectionUI, instead of being done inside ConnectingToServerDialog.
Only one error message appears now upon connection failure.
If connection dialog was minimized, and user double-clicks again to connect, it now returns to normal state on the screen as well as taking focus.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Also fixed a similar issue, where the broken SR was selectable (Create new virtual disk from the SR Storage tab)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
VMstorage page uses the default colours of the controls, hence we only need to set
them on the VNCTabView and the linklabel does not need to be public.
Where (in code removed by this commit) we iterated through the planActionsByHost dictionary, the hosts were iterated through in the order how the dictionary was initialized. Despite the actions were added in the right order, they then were screwed up, because the Cache.Hosts can have the hosts randomly while we want the master to be first.
To fix the bug, I changed the data structure from a dictionary to a list that has the actions exactly in the (good) order, the order they were added, eliminating the risk of the actions being retrieved in the wrong order.
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>
Refactored to hide/show error controls instead of adding/removing them. Removed duplicate null check.
Do not use a second list to track active VM consoles.
Fixed display issue, now showing pools (and standalone hosts at the same level), not masters.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- removed unnecessary casts
- no need to catch exception only to rethrow it; do not interrupt the call stack by using "throw ex"
- redundant check and value setting
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>
- For Dundee and newer hosts: the feature is restricted only if the "restrict_ssl_legacy_switch" flag exists and it is set to true
- For pre-Dundee hosts: the feature is restricted if the "restrict_ssl_legacy_switch" is absent or it is present and set to true
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Moved MD5Hash function from EncryptionUtils to HTTP class.
Replaced unnecessary new string/List-related functions with existing methods.
Removed redundant string.IsNullOrEmpty() call.
Changed duplicate hotkey in Connection Options page.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
VM with the hci-warn-before-shutdown flag. Minor changes to make the warnings for
rebooting and shutting down more consistent (preselect the No button for rebooting;
extended the Yes button text; modified warning text)
Now transfers proxy credentials in encrypted format and checks for default empty credentials when loading them for first time.
Fixed a break in unit test in HTTP.ReadHttpHeaders().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Removed last bits of code relating to "Bypass proxy server for local addresses" option.
New proxy settings are sent from XenCenter to health check service and used to configure the proxy using GetProxyFromSettings().
Health check service now correctly saves its proxy settings and updates the static Proxy property for the Session class; done in new ReconfigureConnectionSettings().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Added 2 textboxes for proxy username and password; encrypted when saved and decrypted when loaded.
Added 2 checkboxes; one for bypassing proxy for xenserver connections, one for providing proxy credentials.
Removed checkbox for bypassing proxy for local addresses.
Controls are no longer enabled/disabled when the related proxy option is selected/deselected.
Making changes to a control (e.g. username, bypass checkbox, etc) selects the 'Use this proxy server' option automatically.
Removed "Bypass proxy server for local addresses" option.
Basic and Digest authentication implemented. Tested with FreeProxy (Basic+Digest), CCProxy (Basic) and AnalogX Proxy (no authentication); each were tested with correct credentials, incorrect credentials and missing credentials; all gave expected results.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
If the license does not allow VM migration, then cause the VMs to be shut down / suspended on the pre-checks page
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
The last pGPU's row was stretching to the bottom, causing the lowest select box to fill its space and go down too much.
Changed the select boxs' dock style and margin.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Changed heading from Recommended Updates to Required Updates following further discussions around wording
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
* CA-77990: Report required actions for all VMs at once in the hotfix wizard / RPUW
* CA-77990: Resolve precheck problems in parallel in the Patching wizard
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-77990: Resolve precheck problems in parallel in the Patching wizard
Changes following code review: Made the ParallelAction work across connections and removed CrossConnectionParallelAction
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-77990: Modified ParallelAction to create queue on RunSubActions only, with the correct queue size
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
- Changed the FolderAction class so that it can be used to delete or move multiple folders across connections, instead of having multiple actions (one for each holder) which can not run in parallel.
- The api calls that update the EMPTY_FOLDERS entry in pool's other_config are preformed last for all connections, avoiding cross-thread exceptions when two threads try to add/remove the same key.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
DownloadUpdatesXmlAction is called on PageLeave and not when the user selects Automatic Mode. This way we get the error message at the right time, also showing a progress dialog what makes the UX much better.
New tooltips for servers on the Select Server Page to to cover two more cases
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
All event handlers are now unsubscribed when AttachDiskDialog is closed, allowing its memory to be garbage collected.
Image for each VDI now references an existing image instead of creating a new object.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
My commit fixes the error message so the dialog will show "Could not create SSL/TLS secure channel." instead of "An unknown error occurred". This text is localised.
Unfortunately we see only a WebException with Status=SecureChannelFailure with no other details - couldn't provide an improved error message
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Added AD-related strings to japanese and chinese resource files; still need translation.
Changed F1/Help mapping of the AD upsell tab to go to the 'Managing Users' help page.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Implemented error handling.
If there has been an error in a pool, we stop executing actions in that pool immediately, and report the error once every other actions have finished. Error in one pool will not affect the upgrade process of other pools.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Made textbox bigger in health check policy dialog.
Made textbox bigger in the 'Authentication with Citrix Insight Services'
section of the health check enrollment dialog.
Adjusted some control properties to correct the position of OK/Cancel
buttons.
Changed 'User name:' labels to 'Username:' in health check enrollment
dialog.
Changed Chinese and Japanese resource files to match English changes.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
* CA-210732: XenCenter VM properties GPU always shows "None"
The error occurs when there is a gpu group with only one vgpu type: When setting the selected item in the vGPU combobox, XenCenter tries to select the group header instead of the vGPU type; because the group header is not selectable, we then default to "None".
With this fix, we ensure that two items are not equal if one is a group header and the other is a subitem.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-210732: XenCenter VM properties GPU always shows "None"
Changes following code review: Added the reverse case in the Equals function
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-210732: XenCenter VM properties GPU always shows "None"
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Removed the first item instead of changing it - it is more logical to not to have it displayed here.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- Re-position the version radio-buttons, so that is clear that the selected version applies to both Create and Reattach
- Pass the selected version to the attach command in the device_config parameter
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Added a Precheck to the RPU wizard, to check if the hosts in the pool have different CPU feature sets (using the old feature check for pre-Dundee pools) and display an error, offering to shut down all VMs.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Significant improvements has been done in "schedule snapshot" policy wizard
for loading messages, hence we do not require recentAlerts field.
Signed-off-by: Sharath Babu <Sharath.Babu@citrix.com>
When an exception is reported during the RPU, XenCenter tries to re-enable the host. But when this fails, we should just ignore it and report the original exception.
Signed-off-by: Mihaela Stoica <Mihaela.Stoica@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>
Now we set Increment exactly as on other pages
when the unit is MB: the increment it will be calculated dynamically (1, 2, 4,...)
when GB, increment will be 1 GB for values >=10GB, 0.1GB otherwise
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- Changes to the the layout: order of radio buttons, removed group box around the manual setting of shadow multiplier;
- Shadow multiplier edit box no longer disabled when "Optimize manually" not checked
- Also changed the wording on the Name page of the new VM wizard
- Added PoolPatchCleanAction which is called for each pool after the patch has been applied on all selected hosts
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Copy VM or Copy Templates wizard will point to the same help: "Copying VMs and Templates"
Migrate and Move VM will show: "Migrate Virtual Machines"
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- The StartDiagnosisForm dialog shows the reasons why a VM cannot be started or resumed. XenCenter tries to get these reasons from a call to VM.assert_can_boot_here, but his function does not perform a CPU feature compatibility check.
- This commit adds the CPU feature compatibility check for resume operations.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Now the Mhtml file contains this image as well. I used IE to save it and apparently (like other browsers) it does not save css-specified background images, so had to add a 0x0px sized img into the html to have IE to save it. Easy workaround and no change to the layout.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
1. Changed the Messages to remove ambiguity between scheduled snapshots and
snapshot schedules
2. Made some functions as properties in IVMPolicy
3. Removed some redundant code
Signed-off-by: Koushik Chakravarty <Koushik.Chakravarty@citrix.com>
Fixed css file to restore alignment to center. /* Note to myself: comments in css are like this note and not double slashes */
Removed bottom-padding so the scrollbars are not going to be shown too early
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Localized the url of the Home Page. Globalization team can now reference different files per localization in InvisibleMessages.resx. (Eg. HomePage.ja.mht) The file then has to be added to XenAdmin.csproj, similarly to HomePage.mht.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Changed layout a bit to get rid of the scrollbars that appeared in a default sized XenCenter
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
* Changed the installer to use the (yet) manually generated MHT file that encapsulates all the source files of the HomePage, so we don't have to have the installer to deploy every single file, so have changed the installer as well. This also makes branding easier.
* Added the license to the LegalNoticesDialog
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Tried to keep changes at one place while not abstracting things too much as we have don't need any complex functionality yet.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
1. Run 'docker attach' if user clicks 'View Console' button.
2. Run 'docker logs' if user clicks 'View Log' button.
3. Make IPAddressForSSH a property of VM for common usage.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
- Container pause is not available if the the container is on a Windows VM.
- Processes is not available if the the container is on a Windows VM.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- XenCenter build system picks up the RPU hotfixes from Artifactory
- RPU001 and RPU002 replace XS62E006 and XS65ESP1006
- Removed hotfixes from the solution, moved XS60E001 to Branding folder
- also cleaned up code in the HotfixFactory class, removing MNR and Cowley hotfixes (not supported anymore)
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
1. Add "View Console" and "View Log" on general tab of docker container.
2. Grey the two buttons if the container is on Windows (Server 2016) VM.
3. Enable the two buttons when the container is running on Linux VM.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
I used the year the code was added to XenCenter: it may be older than that,
but I couldn't easily find out the exact date.
I also made the LegalNoticesDialog resizable, because it's silly trying to
read the legal notices in a teeny tiny window.
- InvisibleMessages.resx contains the default value for the saved search (xensearch), which can be overwritten in Branding.cs
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- InvisibleMessages.resx contains the default value for the update file extension (xsupdate), which can be overwritten in Branding.cs
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
Fixed bug: "Depending on your workflow you can add a VIF to a VM with a duplicate MAC address without warning."
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
The "Start on Server" VM context menu incorrectly enabled hosts that a VM can
only be started on after a storage migration. This was due to the fact that
the VMOperationToolStripMenuItem class is used for both "Start on Server" as
well as "Migrate to Server".
This change ensures that start checks are done when a start is requested, and
migration checks otherwise.
Signed-off-by: Rob Hoes <rob.hoes@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>
Cherry-picked from cream-indigo:
CP-14857: Add "premium" license edition
CP-14857: Add premium license edition for CN version
CA-190342: Add friendly name for "basic" edition
- also hide the Status field from the License Details section if the license is basic
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- The license restriction for vss snapshots already exists in trunk. This commit just amends the message displayed when the feature is not available.
Cherry picked from cream-indigo:
CA-190395: Replace the usage of FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
Cherry picked from cream-indigo:
CP-14848: License restriction for migration for DragDropMigrateVMCommand
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- changed the licenseStatus_ItemUpdated event handler to invoke on the main thread, as this is the only case when a background thread needs to update the storedRows list..All the other reads and writes are taken place on the main (UI) thread
- removed the storedRowsLock as it is not needed since we do all the updates to storedRows on one thread.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
There were times when "HasUpgradeSupportInManagementAgent" was needed, but not anymore, so this commit is changing code to use only VirtualisationStatus.MANAGEMENT_INSTALLED again.
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>
1. Check the Xenserver platform version and display the host disk read/write
threshold and metric weighting for Dundee or later XenServer.
2. Update the metric weighting page to make it autosize-able.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
The restriction that Storage Motion was not possible in the presence of WLB has been removed in Dundee. This commit removes the check in XenCenter.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Show "Able to receive Updates via Windows Update" or "Able to receive Updates via Windows Update" for Windows VMs
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Changes following code review:
* Disabled MTU control and added info label when MTU cannot be changed (due to Min==Max)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Dom0 memory alerts have to be configured in the other_config of the control domain (dom0) and not of the the host. This changeset implements this exception.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed: "User tasks (e.g. VM import) are reported as errors in XenCenter, when they are cancelled tasks."
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
I assumed the problem was that vm.resident_on is always unknown for stopped vms, but this is there intentionally to match only running vms and be always false for stopped ones. However, we still need similar logic to not to send VIF mapping when not needed in the assert.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed filters that are used to determine whether a vm can be migrated to a destination or not.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed how we set the Maximum for the dropdown controls on:
* Creating External network,
* Creating Bonds
pages on the New Network Wizard
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Now CrossPoolMigrateCanMigrateFilter can accept a parameter to decide whether to allow same target pool or not -- if allowSameTargetPool is false, it won't.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- rearranged the controls (removed group box, indented upload-related controls)
- also changed the progress bar style for the upload action to Marquee, as the Blocks style did not show any progress and it looked like the upload hasn't started
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Fixed the exception that was caused by a missing null reference check and also the fact that the license status had to be watched only for pools and hosts, so added a check before starting watching the license status of the IXenObject (on GeneralTabPage)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Revert "Merge pull request #708 from GaborApatiNagy/master_windows_update"
This reverts commit fe03f1382f, reversing
changes made to 423065a2c8.
Conflicts:
XenAdminTests/TabsAndMenus/MainMenuGeorge.cs
- removed the call that assigns vif.VM property, as this property is already assigned in ToProxy()
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
All tests now pass, via a combination of
a) Use more up to date databases
b) Delete obsolete tests
c) Edit the version number in the databases (these should be fixed later)
- 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>
- Add Trim() to the instances where we check if the username is null or empty and also where we use it for authentication
- This applies to both XenServer username and Citrix username
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added Case Number edit box on the Destination page of the wizard
- valid case number needs to be 9 or less digits
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
In the RPU wizard, after we notice that the host has been rebooted we try to resolve the host from cache, but sometimes the cache is not populated at that point.
Then, because we cannot resolve the host, we cannot check the host version and we assume is a newer version (which might not be true).
This commit adds a call to retry to resolve the host (with timeout).
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Fixed the checkbox logic - selected state is now preserved on search or update/refresh. All rows (that can be selected) are selected by default.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed when to enable the Command, the screen uses the connection (works for standalone hosts)
Using CollectionChanged instead of BatchCollectionChanged
Removed unnecessary Invoke
Removed values from the VmUpgradeState enum
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Implementing Upgrading VMs to Windows Update
New screen features:
-Create skeleton of the Upgrade VM dialog
-Implement a Go To Console link (just a link that opens a vm console)
-Implement logic to show the right status for a VM (includes rules to
get the states). Includes updating the dialog whenever the status changes.
-Add status texts to Messages, proper text on the UI
-Add stub methods to VM class in XenAPI-Extensions to r/w states from
Guest Agent
-UI: Implement rules what vms to display, checkbox rules, read only vms,
and when to enable the Upgrade button
-Implement Upgrade button (writes state for GA, mounts ISO) + maximum
parallel executions/actions
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- display the Provisioning entries in the General Tab only for iSCSI and LVM SRs
- also changed the checks in the ConvertToThinSRCommand to use SR.IsThinProvisioned property instead of SR.Provisioning
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Fixed issues where total initial allocation for an SR was not calculated correctly. Also some minor improvements.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- removed unneeded code, as the item.OverCommit is set to None at the beginning of the function
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
The links displayed in the search result for not optimized VMs are:
- "XenServer Tools not installed", for all pre-Dundee VMs and Dundee non-Windows VMs
- "I/O not optimized" and/or "Management Agent not installed", for Dundee Windows VMs not fully optimized
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Button enabled only when "New XS credentials" radio button is ticked and username and password textboxes are not empty
- Button and the textboxes are disabled while the test is in progress
- When test credentials fails, log userName, not UserDisplayName
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- renamed srSpace and srInitialSpace variables
- removed unnecessary checks for thin provisioned sr
- fixed some error on NewDiskDialog.SMConfig property (smconfig was wrongly populated based on controls enablement; the conversion to long was made before converting to bytes
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Moving GetVirtualisationWarningMessages back to VM
Also added EVACUATE_HOST_INSTALL_MGMNT_PROMPT what is shown on the EvacuateHostDialog when a 'new' VM is given and Management Agent can be installed
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- If the new disks cannot be created because their total initial size is greater than the SR free space, then an error icon (with tooltip) is displayed and Next button is disabled.
- If the total size of the new disks is greater than the SR free space, but the disks can still be created (because the initial allocation is smaller), then a warning icon (with tooltip) is displayed and Next button is enabled.
- The tooltip mentions the initial space required for thinly provisioned SRs (initial allocation).
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- when the user changes the disk size (or initial allocation), the selection in the SR list should not change and the list should not be automatically resorted
- users should not be allowed to create disks larger than the SR size (the SR is disabled and an explicit reason is displayed)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When creating a new VM, we no longer use vm.provision to create VM's disks, but instead we create the disks ourselves using vdi.create; this way we can specify the initial and incremental allocations for the new disks.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Removed PV_DRIVERS_NOT_INSTALLED=0 from the VirtualisationStatus [Flags]enum - 0 will mean the same (to avoid bugs with enum.HasFlag(0) is always true)
Extracted common code to VMLifeCycleCommand.GetCantExecuteNoToolsOrDriversReasonCore() method (instead of defining overridden GetCantExecuteReasonCore() method at this level, because not all child classes need this...)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Creates a new function MemorySizeStringSuitableUnits that takes one more parameter that specifies the units that must be used when the number of bytes is 0.
Removed Optimized state and using I/O & Management instead (even for old VMs)
Changed messages to be different for old and new VMs instead of saying Tools or I/O drivers for instance
Removed the extra enum property from the VM class that had been added for search
Fixed code in GroupingTypes class (possible KeyNotFoundException)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Extended the enum, aimed for minimal changes, also using Flags on the enum now
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- If an upload is marked as failed, then display it in the UI (but only as long as there is no successful upload done after that)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Not applied updates do not appear anymore in the General Tab of a pool. (Related to CA-180577)
- If we apply a patch that was already applied (happens when we take a file from disk that is not in the updates list taken from the Citrix website -> no metadata), on cancel we are now removing the uploaded patch from the host.
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
Adds tab indexing to the control for allocation and changes label names.
Corrects mistake that led to exception being thrown when the Disk Size is decreased in the the New Disk Dialog.
Fixing the unit tests pointed me at the command's CanExecuteCore where the check for Dundee or higher was missing. Fixed that as well.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Created ThinProvisioningParametersControl user control using existing code to have the thin provisioning settings at one place. It needs to be initialized by providing an SR and it will expose its internal state via NewSMConfig property that we need at other places.
This does not include refactoring of existing code or replacing existing code to use this new control, but the new Conversion dialog is using this. Next step would be to remove existing code and start using this new ThinProvisioningParametersControl instead.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- no “the” is needed in front of “Citrix Insight Services” (e.g. “…authenticate with Citrix Insight Services…” and not “…authenticate with the Citrix Insight Services…”)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Memory Tab uses GB units for values greater or equal to 1 GB, otherwise show in MB;
- Search Tab displays values in GB or MB in the same as the Memory Tab (e.g. 512 MB of 1 GB, 256 MB of 512 MB, 2.5 GB of 16 GB).
- The shiny bar present in the Memory Tab and in Memory Settings dialog shows the scaling in the following way: If smaller than 1 GB, then show as before, else show only labels with values multiples of half a GB.
- The units used in Memory Setting Dialog are set depending on the static_max. If it is greater or equal to 1 GB, then the units are GB, else MB. The user does not have the possibility of changing them.
- Add code to check license before offering quiescing on the VM Snapshot dialog
- If the feature is not available, the message displayed is: "This feature is disabled due to license restrictions on the server."
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
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.
- removed tooltip fro the "show again" checkbox and changed the chackbox text to say "Show this dialog..."
- fixed spacing in the right hand panel
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Thick provisioning - > Fully provisioned
- Subsequent allocations -> Incremental allocations
Also, updated the Next button on the Location page of HBA SR, to say "Next" for Dundee or greater and "Create" for pre-Dundee pools.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
CA-157785: Hotfix wizard forgets which servers should be greyed out.
When clicking Download and Install update in the Updates Tab, instead of opening a new dialog, it opens the Updates Wizard on the Select Servers Page and download the file in the Upload Page.
Fixes issue regarding the upload of the update every time that the user gets to Upload Page. Now it only uploads it if it has not been uploaded before.
Fixes issue regarding the download of the update every time the user goes back to the Select Patch Page. If the user goes back, but does not change the choice of the update, the download will not be done again.
CP-13035 : Add Refresh button to list of updates on the Updates wizard.
CP-13037 : Provide option from the Updates wizard to navigate to the web page of any hotfix.
The unit of VBD IO throughput is changed to MiB after merged all
VBD related data sources from xcp-rrdd to rrdp-iostat,
Signed-off-by: Kaifeng Zhu <kaifeng.zhu@citrix.com>
- added CallHomeSettings.TryParseStringToDateTime() function, which does not throw an exception if the conversion fails
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added new fields to the Health Check Settings dialog (XenServer credentials)
- these credentials are saved as xapi secrets, and on un-enroll they are being removed
- removed the Authenticate button; the authentication is now done on pressing the OK button
- the Health Check Settings dialog is displayed on "Enroll now" and "Edit Health Check settings"
- display the "Last Successful Upload" on the Health Check Overview dialog
- use uniform format when converting time to string and string to time
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1. Using en-us to transfer upload request time
2. Check the pipe is closed before close it.
3. On demand upload will not have 24 hour due problem since it only check once in half an hour
4. Avoid get upload token by empty session.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- Call TransferCallHomeSettingsAction with suppressHistory=true so the action doesn't show on the Events page
- This change also fixes LogsTabTests test failure.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- When "Request upload now" is clicked, instead of disabling it, change the link to an unclickable text saying "Upload requested at....".
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- show new NIC column on the Location page (visible for FCoE only)
- display the summary page
- resource strings for default SR name and the blurb on the first page in the wizard
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Add VDI page, Initial Allocation Size field: To override default to
default value behaviour it is no longer enough to enter this field - at
least a change has to be made to it's value.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Add New Virtual Page (VDI):
By default, the SR's default initial size allocation percentage (that may be different for different SRs) is used.
Once the user has changed the initial allocation rate, the page would only use the custom value from that point.
New SR Wizard:
Minimal change in if statement and added comment in RunNextPagePrecheck
method for LvmoHba.
- add the option on the destination page of the wizard
- for authentication purposes, MyCitrix credentials are required.
- these credentials are only used to obtain an upload token that will be used for the upload.
- the upload token expires in 24 hours and is not saved in the xapi database.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Added "FCoE Capable" column, showing FCoE capability as Yes/No values in the NICs grid
- This column is only visible for Dundee or higher hosts
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
-Changed code, because API needs 0-100 percent values as 0..1
-Code for HBA SRs
-Changed free space check for new VDIs to condider initial disk size only
when the SR is thin provisioned
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Making the "Open SSH Console" button visible but disabled instead of hiding it in the following cases:
-VM is suspended
-VM is running, but we do not know any IP address (eg no Tools installed on it)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Added this information on the VM's general tab, and it could be one of the following:
- Operating mode: Paravirtualized (PV)
- Operating mode: Fully virtualized (HVM)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Check call home enrollment status on connecting to a pool: If status is unknown it means that the pool is not enrolled (enabled) and has never been (disabled). If that's the case, then show the Health Check Overview dialog with the pool selected
- "Enroll now" on Health Check Overview will try enroll the selected pool into call home using existing token authentication. If this is not possible, then a dialog will be presented for the user to perform the initial authentication.
testSafe2Upgrade pugin function in prepare_host_upgrade.py is called as part of the RPU pre-checks
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Reverted previous fix 7608caafd7, because
managed to find the root cause of this issue: commit ce3bec1231.
Instead of reverting the latter completely, this commit fixes the regression by removing unnecessary calling of UpdateButtons().
Note: The button will still be enabled for dom0 console.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Changed the name of the operation in XenCenter to "Migrate VM" for suspended VMs, instead of "Move".
This clarifies the distinction between copy/move and migration:
- running and suspended VMs can only be migrated
- stopped VMs can be moved and copied
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- changes following code review: menu item available if multiple items selected inside the same pool
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Auto switch to RDP should be taken after VNC connection got the correct screen resolution.
Also not enable “enable RDP button” before VNC connection get the correct screen resolution.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
Fixed the bug by subscribing to events of all actions and not only to the
ones that are displayed in the grid.
Besides this, the visibility of the row is being used instead of removing and
re-adding rows on status changes.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Using ShowDialog() instead of Show()
Also removed unnecessary code that displayed the popup again
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Passing suppressHistory=false in the MultipleAction's constructor (so no action item will be displayed in the Event view for the MultipleAction itself)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- On receiving a HOST_IS_SLAVE exception, only change connection.Hostname property if we need to connect to the pool master. Leave it unchanged if we are already connected to the pool, as no further action is required. This will ensure that we don't change the Hostname of a slave back to the master, if the user tries to connect to it immediately after it has been removed from the pool.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Check current XenServer Version, if current version is greater than Cream and PV tool installed, do not disable control button.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- store the empty vnc password after a successful login, to avoid displaying the login dialog box on a subsequent reconnection attempt
- abort the vnc connection attempt if we notice that vncIP is null and switch back to the default console
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- changes to the text to be suitable for migrate and copy operations, where possible
- added different text for copy on some pages
- also different text for single and multiple selection
- changes to text alignment, tab order, hotkeys on the copy pages
- removed Finish page from the intra-pool copy wizard
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- while upgrading a host, throw a HOST_OFFLINE ("Server could not be contacted") exception if the host can no longer be resolved (instead of HANDLE_INVALID)
- also corrected the parameters of the HANDLE_INVALID exception, as an extra parameter is needed for the friendly error name.
- in the UpdateManualHostPlanAction class I replaced Host with the private property _host in several places, so we are no longer trying to resolve the host each time we want to write something into logs
- added some null checks, to avoid reporting null reference exception
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added some null checks
- in the Cross pool migrate wizard, add Transfer network page for all cases except intra-pool move (which is performed via VMMoveAction)
- added comments to VMCrossPoolMigrateAction constructor to make it cleared what the copy parameter means
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
-New Network Wizard: Changing the layout on the network type selection page to make this page "dpi aware" using FlowLayoutPanel. Additional info is shown on the bottom of the panel instead of tooltips, some code has been removed that used fix positions and moved controls around.
We observed that some threads can reach deadlock-ish state after they have Invoked into a control's UI thread. When it happens they are all in a waiting for join or in sleep state for very long time, although there should not be any deadlock situations.
It seems this has something to do with multiple parent controls and with which control we invoked on. This should not make a difference, because we have got one UI thread (for MainWindow) they should wait for, but we have seen it does.
The solution that fixed this issue was to invoke on the MainWindow instead of various controls (see a4fe507adf ).
This changeset is changing all our Invokes to invoke into MainWindow
instead of a control itself. (MainWindow's UI thread is the only UI thread
all Control is using in XenCenter)
This changeset should be in place until we have found the root cause or the exact reason for the above.
- modified CopyTemplateCommand to launch a cross pool copy if permitted
- added CrossPoolCopyTemplateCommand which opens the Cross pool migration wizard in "copy" mode
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added a "copy mode" page to the Cross pool migrate wizard (when in copy mode) where the user can select intra-pool or cross-pool copy
- If intra-pool option is selected, then the wizard will display a page similar to what we currently have in the Copy VM dialog
- If cross-pool option is selected, then the wizard will display all the cross pool migration pages
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- modified the VMCopyCommand to launch a cross pool copy if permitted
- added the CrossPoolCopyVMCommand which opens the Cross pool migration wizard in "copy" mode
- modified the cross pool migrate action with an extra "copy" parameter, which will add a copy option to the vm.migrate_send function call
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- When deciding whether to allow GPU configuration on a VM, check if the HA is enabled, not just the the VM's restart priority setting
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
-We used to check host.RestrictVgpu instead of checking the API version when populating the dropdown on the GPU Settings page. This is not sufficient anymore as it depends on the license too, so changed the code to check version (vGPU was introduced in Clearwater SP1).
Changes following code review:
- add static methods to the cross pool migrate and move commands to determine if the command can execute
- In the Cross Pool migrate wizard: add Transfer network page for cross-pool move (and copy) operation (as well as all migrate cases)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
This code change is to set “switchOnTabOpened” in below condition:
1. XenCenter have “Automatically switch to the Remote Desktop console when it becomes available" selected
2. VM have RDP enabled.
3. XenServer Version is Cream or greater.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
-Making CIFS radio button invisible (instead of visible but disabled) when CIFS is restricted (license)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
-New SR Wizard - SR Type Selection page: radio buttons are now on a TableLayoutPanel with auto sized rows
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- With these changes, a stopped or suspended VM can be moved across pools; this is performed as a vm migrate operation.
- The intra pool move will continue to be a vdi.copy + destroy operation for stopped VMs, but for suspended VMs we need to do it a as vm migrate operation.
- We use the Cross Pool migrate wizard for both intra and cross pool move operations, but introduced a wizard mode parameter in order to adapt the wizard to the specific operation we want to perform (migrate, move or copy)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
-NFS version selector radio buttons now belong to the Create new SR option. This section is disabled on reattaching.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
New SR Wizard:
* Removed "V" Alt-key from "NFS Version" text
* Changed the alignment of the NFS version selector radio buttons to vertical
* Fixed tab orders at all places
"* New SR wizard -> Type page: Add more info for CIFS (similar to what we display for NFS)
* New SR wizard -> Type page: Rename the other types to:
** Virtual disk storage: NFS, iSCSI, Hardware HBA, CIFS
** ISO library: Windows File Sharing (CIFS), NFS ISO
* Autogenerated description should say "CIFS SR" (not NFS SR)
* SR type (as displayed on the General tab for a CIFS SR) should by CIFS (not Unknown)
* New SR wizard -> Location page for CIFS: correct tab order"
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- override the Equals function on HostOutOfSpaceProblem to check the disk space requirements, not the Description.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Show ports as: Address: 0.0.0.0; Public port: 8088; Private port: 8088; Protocol: tcp (multiple lines if more than one set)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
-updating Errors property in SrWizardType_Cifs with the Failures that can occur when doing CIFS SR operations
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Implemented changes as follows (copied from ticket):
"I'd suggest the following use-ability/homogeneity fixes for the new container management tabs, if they are quick and easy:
Combine "Docker Version" and "Docker Information" on the VM-General-tab into "Container Management - Docker Status" with the following fields only:
API version
Version
Git Commit
Driver
Index Server Address
Execution Driver
IPv4 Forwarding
In the "Processes" tab, change the name from "Docker Processes" to "Container Processes"
In the "Details" tab, change the name from "Docker Detail" to "Container Details"
In the "Details" tab, drop the top level element "docker_inspect" (XML requires a single root-node, afaik the Windows form treenode does not), or alternatively open the root node by default and rename it to "Inspect Result"
In the "Details" tab, add the "Details"-headline in black on white - just like on the "Processes"-tab
Also, on the container's General tab, show Properties button disabled, instead on hiding it (to be consistent to other cases, e.g. disconnected servers)
"
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
-Added support for CIFS (SR type, SR Wizard)
-Added some Debug.Asserts to the Create SR action to watch for clear text paswords
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- When the install fails, log the full error description
- Added a specific exception for the supp pack installation failure
- Better action title (depending on the number of servers it applies to)
- Added a "More Info" button on the "Update" page, which displays a message with more information on the supp pack installation failure
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- If failed to retrieve the config parameters, then make the ConfigDriveTemplate textbox read-only and display the reason why it is not editable (similar with what we do for running VMs).
- In the New VM Wizard, if the action on "Reset to Default" button fails, then popup a message box with an error saying that we were unable to retrieve the default parameters. In this case, the ConfigDriveTemplate textbox remains unchanged.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- changes following code review: simplified the code that determines the current state; and renamed some variables.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Added a "Integrated GPU passthrough" section to the PoolGpuEdit page.
- This section is only visible for a host that has GPU capability and the enabling/disabling of integrated GPU passthrough is not restricted.
- With this addition, the GPU page can now be displayed for a pooled host as well (previously only pool or standalone host)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Disable the Refresh button while a refresh is in progress.
- Introduced ExecuteContainerPluginAction - an action that stores the container it was called for, so that on completion we can decide whether to update the view or not (if the container displayed has changed, then we shouldn't update the view with the results from a previously selected container).
These changes apply to container Processes and Details tabs.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- also made Refresh buttons the same size on Details and Processes page and changed Details tab caption from "Detail" to "Details"
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- this applies to the Cloud-config page on the New VM Wizard and VM properties dialog.
- same for the container enlightenment page on the VM properties dialog.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Show a “Read Caching” section on the General Tab of a VM when the VM is running on a Cream or greater host
- When the Read Caching is enabled, the “Read Caching” section will contain two entries: Status and Disks (list of disks with RC enabled)
- When the Read Caching is disabled, the “Read Caching” section will contain two entries: Status and Reason
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Instead of calling the plugin on the UI thread, we call it through an action that we execute asynchronously and on completion update the UI.
- Pause the refresh timer on leaving the page and resume it when entering the page again.
- We do this for both Processes and Details page.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Pool_patch.precheck can fail with the xapi error OUT_OF_SPACE when is trying to copy the patch from master to the slaves. This happens before the patch-precheck checks if enough space is available for installation. Therefore is different from the error we are currently processing, PATCH_PRECHECK_FAILED_OUT_OF_SPACE
- If the precheck fails with OUT_OF_SPACE then we try and retrieve the disk space requirements and report a HostOutOfSpaceProblem.
- Changed the PatchPrecheckCheck to try and find problem from a xapi failure, as well as from the result of the precheck call.
- Also removed ampersand from the the link labels (More Info and Clean up)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- The cloud config parameters page is only visible on a VM that already has a config drive.
- The cloud config parameters can only be changed when the VM is halted.
- In the New VM wizard, if a template is selected that already has a config drive, them the wizard will display the existing configuration, not the default one.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Remove “Remote access is not enabled on this guest” in cream in below condition:
1.RDP status is on
2.PV driver is cream or greater
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- Showing all detailed information from a docker_inspect call
- The information refresh/polls every 20s while it's open
- Button “Refresh” add, so user can refresh the result. Also shows time when the last refresh happens.
- Add TabPageDetails as value 9903 in HelpManager.resx
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
-Added HostOutOfSpaceProblem to let the user to clean up disk space when getting PATCH_PRECHECK_FAILED_OUT_OF_SPACE error at precheck stage in the patch install wizard.
-A bit of refactoring of DiskSpaceRequirements class in order to be reused here
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
This fixes the following issue: when displaying the General tab of a container, the Properties button is hidden, but not made visible again when switching to another object type (e.g. VM)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1.Add ports and command in DockerContainer object
2.All labels in General box are internationalized.
3.Add UUID, command, ports in General box
4.Export DockerContainer in ICache
5.Modify tab title to "Container General Properties"
6.Remove properties button
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
New Page: Enlightenment on VM Properties Dialog, visible only for:
- VMs on Cream Or Greater hosts
- that can be enlightened, regardless of their power state
A VM can be enlightened if the key "xscontainer-monitor" exists in other_config.
A VM is enlightened if other_config:xscontainer-monitor if true.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- don't update the progress bar when checking disk space (only the description)
- the color used for "in progress" action description (above the progress bar) should be the system default font color, not black
- actions should throw ArgumentNullException, not NullReferenceException
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Before starting the upload to the master hosts, check if there is enough disk space (check only performed for Cream or greater hosts)
- If enough space available the upload starts automatically; otherwise an error is displayed
- If we can free up enough disk space then we offer the option to Clean up. Otherwise we provide the user with the information on required and available space and the user will have to manually free up required space.
- Also Disable the Upload page for oem updates
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>