* CP-16922: UI changes to PvsPage to replace the single configure button with a separate enable and disable one, per the design doc
* CP-16922: Intermediate checkin - command + dialog implemented, but PVS page has some layout problems.
* CP-16922: Implement GUI for enabling PVS read caching and marking/unmarking VMs for prepopulation
Fix the broken layout by reverting MainWindow.resx (which shouldn't have changed) back to the previous commit. Also removed duplicate properties button code.
* CP-16922: PVS Page changes, to properly display all VMs (not just ones with proxy), only populating proxy columns if there is a proxy set.
* CP-16922: Use a CommandButton for the enable button, connected to the same command as the VM main menu button, and using the table selection as its selection manager.
* CP-16922: Delete the old enable button click behaviour (because it now has a proper command), was causing the dialog to show up twice
* CP-16922: Properly list VMs by hiding those that should be hidden (in addition to non-VMs, also hide the __gui__ prefix and others covered by Show function). Also fixes a bug in NewVMGroupVMsPage discovered when fixing this - it would show VMs that should be hidden if you used the search bar.
* CP-16922: Use ButtonText on the Command to set the text on the PVS enable button
* CP-16922: Add the disable PVS read-caching command, and its associated proxy destroy action. Both based off enable equivalents (main difference is no dialog for now). Not used yet but will be in main window menu + disable button
* CP-16922: Add disable PVS read-caching to the main window menu (under enable), with the disable command attached to it
* CP-16922: Add support for disabling PVS read-caching for selected hosts via the PVS tab page by converting the disable button into a CommandButton in the same way as the enable button, using its own command + selection manager (because Selection Managers only bind to one control)
* CP-16922: Design - adding the "read caching enabled" column from the design, so that we display both whether caching is enabled and whether the VM is currently cached. If it's disabled all other values are missing.
* CP-16922: Add the PVS site column per the design to show the site a VM's PVS Proxy is on if it has a proxy
* CP-16922: Add an event handler for VMs changing so that newly provisioned VMs immediately show up in the PVS tab page
* CP-16922: Support for properly remembering the selection when the VM list is refreshed. A new method returns the list of VMs for the selected rows, and we can then check if the VM for the row being added is in this list. If there was no previous selection then we still select the first row by default.
* CP-16922: Remove prepopulate, which is being removed from the design. The next XAPI version will remove it, so just pass False as prepopulate for now, and remove the option from the dialog and PVS tab page.
* CP-16922: Improve UI appearance for a missing Storage Repository. Per the design, if there is no SR show the message None (memory only) instead of an empty cell
* CP-16922: Improved sorting behaviour. All columns (except VM name, which always uses it) use the VM tag as a sorting fallback (since they all have duplicates). New default sort which sorts by caching enabled first (yes before no), and then VM tag as a tiebreaker. Support for remembering the current sort on refresh, ie when a value changes.
* CP-16922: Refactoring to use a VM extension method to get the PVSProxy (or null if none exists) for a VM. This was used in the PVS Page + commands which are now much simpler.
* CP-16922: Move where the SelectionChanged event handler is set when refreshing the PVS table, so that the command buttons are updated correctly.
* CP-16922: Improvements to PVS read-caching dialog. Set accept/cancel buttons properly + adjust tab values, so focus acts as expected
* CP-16922: Remove the images from the menu for Enable/Disable PVS read-caching, most commands in the menu don't have one
* CP-16922: Sorting out the strings for the actions + ParallelAction calls, and moving them into the resx. Also reverting wrong MainWindow.resx changes.
* CAR-2184: XAPI changes. I've made the minimal possible changes to PvsPage to ensure it compiles, but it's had a lot of feature work (CP-16922) that supersedes this, these small changes should keep that merge painless.
* CAR-2184 XAPI: Reverse the unrelated changes, only keep the PVS ones.
* CP-16922: Merge latest XAPI changes, notably changes to Pvs_site.create
* CP-16922: Change tab show/hide logic for PVS tab, show it even if there are no PVS sites.
* CP-16922: Implement GUI for enabling PVS read caching
Design changes - remove the storage repo column and replace it with status, which is populated with a friendly version of the pvs_proxy_status enum. Also populate site list using site.name_label
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
* CP-16922: Implement GUI for enabling PVS read caching
Adjusting the CanExecute of Enable PVS read-caching command to require at least one PVS site to be created. Since the PVS tab can show up without any sites, we need this because we can't create a proxy without a site.
* CP-16922: Code review changes.
Tidied up messages, and ensured actions run async properly, and without exiting before their task.
* CP-16922: Code review changes.
Update dialog resx, wider combobox on dialog, update action descriptions before setting RelatedTask, add friendly message body for PVS error notifications.
We already renamed the column to target server, this changes the message in the case where the user doesn't choose a server on this page to also use target server.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Adjusted messages, and added a tooltip to the Automatic restart radio when it's disabled. Also now support standalone hosts in addition to pooled.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@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>
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>
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>
- 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>
- 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>
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>
Changed message to "Deleting update installation file ..." to match wording in previous page of the wizard.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
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>
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>
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>
- 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>
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)
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>
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>
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>
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>
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>
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>
There is a new pool join rule in xapi: the joining host may only have physical PIFs, i.e. no bonds, VLANs and tunnels (cross-server private networks). This is checked by asserting that for all PIFs of the joining host, PIF.physical = true. When this occurs, people should be encouraged to manually remove any existing bonds, VLANs or tunnels and try again.
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>
- 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>
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>
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>
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>
Revert "Merge pull request #708 from GaborApatiNagy/master_windows_update"
This reverts commit fe03f1382f, reversing
changes made to 423065a2c8.
Conflicts:
XenAdminTests/TabsAndMenus/MainMenuGeorge.cs
- 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>
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>
Changed the virtualization state values on the search to: Not optimized, Unknown, Out of date, I/O optimized only, Management Agent installed, Fully optimized ("Management agent installed" not included)
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>
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>
- 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.
- 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.
- 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>
-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>
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>
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>
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>