- if a hotfix eligibility date field is invalid, then the hotfix eligibility warning does not include any reference to this date.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CP-30958: Initial implementation of the Conversion Manager in XenCenter.
* Corrections following review and improvements.
* Further corrections and improvements.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
CP-31527: Add notifications in XenCenter for versions that are no longer eligible for hotfixes
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Also, fixed issue where uploading a supp-pack resulted in a perpetually
pending action if the file had disappeared from the disk.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
If the tar contains huge files, this causes memory spikes, even OutOfMemoryException.
Instead, copy the file from the input to the output stream in chunks.
For this purpose the sanitisation code was moved to XenCenterLib to avoid
exposing the tar internals to the UI project.
Also, made some minor improvements in error handling, clean up, and logging.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
1. Update AddVGPUDialog title;
2. Add label above the combobox;
3. In the combobox, add text to the entry saying if multiple vGPU is supported;
4. When the dialog is open, focus on the combobox;
5. Preselect the vGPU type if there is only one option available;
6. Setup the Help ID for dialog;
7. Optimize vGPU adding and deleting in GpuAssignAction.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* CP-31063: Add support for multiple vGPU
(incomplete)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CP-31063: Add support for multiple vGPU
(part 2)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* AddVGPUDialog
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Update bindings.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* REQ-720: Initial implementation of AddVgpuDialog.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Improve the handling of buttons and combobox. Fix comments.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Fix comments.
Signed-off-by: Michael Z <michael.zhao@citrix.com>
* Refactored the VIFDialog to fix various problems:
- Launch the dialog in using blocks.
- Event GotFocus is not meant to be handled directly in the code.
- Populate the dialog in the OnLoad override instead of the constructor
as this causes problems at design time.
- Popping up an error message for duplicate MAC on combobox item
selection or textbox text change is not optimal UX. Perform this
check once when closing the form. Additionally the parent form of the
pop up should be the dialog, not the main window.
- The validation messages are not obvious to the user because they are
hidden in the tooltip of a disabled button. Show them inline instead.
- There is no need to create commands for VIF creation/change; use
the relevant actions instead.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Corrections as per code review plus some more code tidy and refactoring.
- Added option to suppress Create/DeleteVIFActions
- Use property RebootRequired to indicate hot-plugging is unavailable
(assigning various objects of different types to the Result of the action
during its run may cause confusion).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- On the dialog show the next run time in both the client's and the server's local time zone.
- On the VMSS frequency page allow the user to pick the schedule in the client's
local time zone and show then next run time in both the client's and the server's local time zone.
- Refactoring to fix workflow and class design, reduce amount of code and simplify logic.
- Various layout improvements.
Signed-off-by: Aaron Robson aaron.robson@citrix.com
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Refactored MeddlingAction and Task classes: moved the logic for building a MeddlingAction outside the Task class and switched to using the vm_operations enum to identify which tasks are suitable for MeddlingAction
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
of the hosts to be upgraded and not only on the first one in the list.
For this purpose, the test has been moved to the prechecks, and the
failures are now shown as a non-fixable problem.
Further, specification of the network location of the installer files
has moved closer to the upgrade mode selection.
Also, moved the hotfix and upgrade related checks immediately after the
host liveness check.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Moved these errors to the FriendlyNames, which is reserved for resources with
keys coming verbatim from the server.
Some code efficiency corrections to the page's workflow.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
because it only manages friendly names; moved it closer to the relevant resource files.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- removal of the SystemStatusAction launching the individual SingleHostStatusActions,
because the connection was set incorrectly to the last one of the selected
connections and, if an error occurred to that connection, the data collection
for all of them failed.
- proper handling of HTTP.CancelledExceptions.
- replacement of the FlickerFreeListBox by the more versatile DataGridViewEx.
- corrections to reporting progress for individual hosts as well as page totals.
- made collection of client side data more obvious.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Simplification: use auto-properties.
* Removed unnecessary null check. Converted private methods to linq method chain.
* Removed unused file. Added null check.
* Corrected property names as it was difficult to distinguish between the alert,
the patch and the filepath.
* Removed duplicate lock.
* CA-296490: Rewrote the logic uploading single updates so as to facilitate uploading to multiple pools in parallel.
* Corrections as per code review.
* Account for the case of uploading from disk legacy updates that do not correspond to an update alert.
Removed unfriendly error messages (the failure is written out in the logs anyway).
* Wizard test corrections and some modernising:
- Only call cancel on the last page if the test allows us to.
- Do finish the UpdatesWizard test.
- Finish the RunWizardKeyboardTests using key strokes instead of button clicks.
- Ensure the Cancel/Previous buttons do not have focus when sending an Enter stroke.
- Use optional parameters in the WizardTest constructor and string interpolation.
* Renamed badly named property.
* Improved code cloning VMs by assigning new opaque_refs to cloned VBDs.
Compacted test object provider: use optional parameters instead of method overloads.
* Modifications to prevent multiple update of enabled state and ensure the wizard
buttons are updated last.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
CA-303516: Cannot change dom0 memory via XenCenter.
Allowing the user to proceed (not set the value and min/max to 0.0GB) even if the memory static min and max is in the wrong order.
Adding further detail to the error message in case an out of bounds value is sent to the API which could potentially happen due to the range widening that occurs if the min/max would invalidate the existing value.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
- Corrected folder selection; reduced clicks required to select folders;
improved text; added delete button.
- Moved FolderChangeDialogTreeView to the same folder as the other TreeViews;
- Added missing null checks to the MutliSelectTreeView and hid properties
HScrollPos and VScrollPos from VS's designer (the former was initialised
to zero every time the designer was updated, causing the treeview images
to disappear).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Stepping up the PercentageComplete manually is not required as PollToCompletion is doing this for us already.
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
This fixes the bug in the Patching wizard, where the wizard does not show any error and does not notice the disconnection, so it is stuck in the Installing update phase.
The Patching wizard only uses the ApplyUpdateAction class, but I had also changed the ApplyPatchAction class to avoid similar problems in the RPU wizard, where this action is used to install the RPU hotfix during the prechecks.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Also, simplified the logic selecting the single update when we leave the
SelectPatchPage so as to avoid ambiguities in which properties are to be set
and refactored the error handling methods to avoid duplicate checks and
provide the right error message (for example, the error message was misleading
for a non-existent path; or, the level of detail provided in the case of
invalid zip content was of lesser relevance to the user).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Also, call the XenServerHealthCheckUpload in a using block; use the FileInfo.Open
method to open the zip file for upload.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
The changes included are:
- use a HttpClient object instead of HttpWebRequest
- use the same FileStream for all the chunk uploads
- retry the chunk upload if it fails (max three tries)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CP-14807: Delete OEM in ServerVersion
* CP-14807: Removing unused IgnorePatchAction and IgnoreServerAction classes (moving their constants to the Updates class).
Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
* Correct out of range percentage and throw an assertion instead of silently
logging it so we can fix the causes of it. Compacted method logic.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Exception handling: prevent InvalidOperationException if the health check service
is not found on the computer (installation is optional).
Do not throw exception and handle if the task handle is invalid, but rather
throw it only for other cases of task.status being failure.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
do not show the upsell dialog; the user should be able to move the VDIs without
having to detach them first.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
1. Update the duplicated shortcuts on CPU&Mem Page
2. Default radio boxes invisible
3. Move hardcoded logic to VM.cs
4. BIOS boot should be always enabled
5. Move radio boxes to Installation Media page
6. Extract radio boxes as a user control
7. Update summary
Signed-off-by: Tim Liu <tim.liu@citrix.com>
* CA-293813: Patch pools in parallel when installing a single update/patch or supplemental package.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Corrections as per code review.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Show ellipsis on the join/leave button since it launches a dialog requirng user input.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
with references to the connection; pool or master can be resolved from the
latter. This among others prevents the AD page from crashing when the master
and the pool change after master's entering maintenance mode.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Also add a sleep to try and avoid getting a VDI_IN_USE exception when deleting the VDI after the upload failed or has been cancelled by the user
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
include the VM's name in the message to help the user identify it.
Also, we have more instances of "shut down" than "shutdown".
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
for both fully and partially attached SR. For ely and above the SR needs to
be visible from master, while for earlier versions we pick a list of a SRs
to cover all hosts.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
explicitly what the actions do. The previous description "updating" could be
confusing when seen out of context amidst other actions on the events page,
because updating also refers to server patching.
if they fail the user has no indication an error occurred.
Also, simplified the logging and error handling within the action body: failures
are logged anyway by the base class, so no special handling is necessary.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
are set unless the new value is actually different. Small efficiency improvements
to the DownloadPatch action and plan action.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
An exception is thrown by the ProcessXml function if the result is an empty string, which is the case when the action is run with the RbacCollectorProxy to collect the API calls
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added an action for the API call that retrieves the WLB VM recommendations
- removed the thread used for updating the menu items, so that we always access the menu items on the UI thread and do only the server calls on separate threads (for WLB, getting the recommendations now is done on the new action, for non-WLB we have the `workerQueueWithoutWlb`)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-287857: judge if the status of pifOnMaster before enable SR-IOV
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
* fix some comments
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
* fix comments
* fix comments
* CA-287856: Add new API calls and update SR repair
* CA-287856: changed setIscsiIQN and added try/catch
* CA-287856: correct method
* CA-287856: add else
- use the plan action's ProgressDescription property to display the steps in RestartHostPlanAction (evacuate host, reboot host, bring babies back);
- the plan action should not be visible if the restart is skipped;
- The change to the DownloadAndUnzipXenServerPatchAction is to ensure that the download progress description is updated on the wizard with the correct description (in automated updates mode, via DownloadPatchPlanAction); DownloadPatchPlanAction is using the ActionChanged event to update its description based on the action's DownloadProgressDescription property, but the ActionChanged event is called when the PercentComplete is updated, so this needs to happen after DownloadProgressDescription has been updated.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Move the scan for HBA devices after the Provisioning page
- Fix the device-config for HBA (removed uri)
- Add probe_ext in FibreChannelProbeAction and the method to process the result
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-286458: Fix latestcr XC requirement when apply CR update
Using minimum_xc_version attribute in xenserver version to
determine which xencenter version is required.
* CA-286458: change MinimumXcVersion type to Version
Signed-off-by: Ji Jiang <ji.jiang@citrix.com>
* CA-286342: SRIOV should be enabled on master when 2 NICs are not the same type
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
* set the ExpectDisruption as false after action finished
* CP-26363: Display the remaining VF numbers in NIC TabPage
* correct the link status of Networking TabPage
* show the warning when creating SR-IOV network
* fix some comments
* modify the action
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
* update the XenAPI according to the Jason-RPC
* CP-26362: Enable create SR-IOV network
* fix review comments
* fix the judgement on SR-IOV details page
* disable the finish button
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
* CA-284226: Reduce unnecessary CanExecute() calls.
* CA-284226: Optimize the performance of menu Migrate to Server and Start on Server.
* Fix an error in updating Migrate menu with WLB, which lead to crash.
* Clear the worker queue when menu is closed.
Signed-off-by: Michael Zhao <michael.zhao@citrix.com>
* Fix comments.
* CA-274082: Check status of SR uploaded updates during update installation
* fix review comments
Signed-off-by: Jisheng Xing <jisheng.xing@citrix.com>
it's obvious what it is. The Session's uuid will be deprecated from the API bindings.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
This fixes the error thrown when importing templates with XenCenter 7.3 on servers earlier than 7.2
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When configuring the IP address on the cluster network, we need to temporarily unplug all GFS2 SRs and disable clustering.
This commit also includes a fix to the action progress calculation.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When trying to import a default template from xva, xapi notices that it is a default template, finds an existing one on the host and returns that one.
With these changes, XenCenter handles this case and displays an error, instead of waiting for the returned VM to be linked to the import task (which never happens).
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CP-24412: Apply a filter before adding USBs to candidate list in Attach Dialog.
* CP-24333: Apply HA restraint.
* CP-24412: Fix a merge error.
* CP-24412: implement actions to attach/detach/passthrough.
* CP-24412: Add license check before making UI components visible.
* CP-24412: Change layout of new components to Dpi.
* Fixed all comments.
* Fix comments.
* fixed comments
server time (previously on the UI thread) and also update the message list
for each snapshot schedule. Preserve column sorting and multiple selection
when the list is rebuilt. Do not enforce minimum size on the form since it
is not resizable.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
it's not needed as it does not make server calls. Some more refactoring and corrections
here and there.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
prevent them from being serialised alongside the API properties. This will also
be useful for moving the API bindings out of XenModel.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
CUs are available as both updates and upgrades, but they should be presented as updates where possible.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-249823 - Accept zip files in Updates Wizard
* CA-258326 - Improve implementation of CA-248823(Accept zip files in Updates Wizard)
* Small unrelated bugfix: Stop selectFromDiskRadioButton being checked when
restoring dismissed updates.
Signed-off-by: Letsibogo Ramadi <letsibogo.ramadi@citrix.com>
- Add an empty string (instead of 'null') if the IP address is null
- Only include the XC uptime in the SSR produced in XenCenter
- Also changed the name of the metadata file that is included in the SSR
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Added more items to the metadata; the content is now slightly different between the SSR produced in XenCenter and the one from the HealthCheck;
- Encode the metadata string before sending it to the Health Check;
- Always suppress history for the action that sends the proxy settings;
- Renamed some of the new classes;
- Also refactored the actions that send data to the HealthCheck service.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- XenCenter sends its telemetry info to the HealthCheck service
- The HealthCheck service saves this metadata in its settings file and includes it in the health check upload
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-257574: Manage vApps dialog is unusable with a vApp containing a large number of VMs
- In the VMAppliancesDialog, change event handlers to reduce the number of refreshes when something changes: only reload the appliances when the VM_appliance collection change; if a relevant property is changed (in VM_appliance or VM), then update only the affected rows.
- Improve the way we assign VMs to a group (AssignVMsToVMApplianceAction and AssignVMsToPolicyAction): only update the VMs that really changed.
- Also improve the way we update the VM startup options and HA restart priorities on a set of VMs
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-257574: Manage vApps dialog is unusable with a vApp containing a large number of VMs: changes following code review
- reverted the changes to the AssignVMsToGroup actions that added the additional constructor
- changed the AssignVMsToGroup actions to calculate the set difference between two lists more efficiently
- added code to deregister PropertyChanged events on VM_appliances
- removed getCurrentSettings() method as it is not needed, GetChangedSettings can be used in all cases
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Ensure that the disk-space plugin functions are not called on Ely or greater hosts, except for the 'get_avail_host_disk_space' function, which is still needed
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- restore the "empty credential" test and update HealthCheck to ignore null or empty username and password
- also update XenCenter so it doesn't send null or empty username and password
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
The error was happening because of the Pool.sync_database call (when HA is enabled and the VM has a saved restart priority other than DoNotRestart) which requires pool admin or pool operator roles.
This call is not needed, so removing it.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Use the NewSession function which returns a session using the elevated credentials if they exist, otherwise using the connection's credentials
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* CA-249056: Add a unique ID to XenCenter Check For Update
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
* CA-249056: Add a unique ID to XenCenter Check For Update
Fixed the format of the User-Agent to comply with [1].
[1] https://tools.ietf.org/html/rfc7231#section-5.5.3
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
* CA-249056: Add a unique ID to XenCenter Check For Update
Changes following the code review
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
* CA-249056: Add a unique ID to XenCenter Check For Update
Changes following the code review
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
* CA-249056: Add a unique ID to XenCenter Check For Update
Changes following the code review
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- set managed=true, otherwise the network creation fails with the error "The network is not managed by xapi"
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Reset the action's Session after the PureAsyncAction is run to collect the RBAC method list.
Also fixes the bug where AD users cannot do multiple operations on the VMs [SCTX-2517]
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1. Added pool.management_reconfigure to RBAC check
2. Time out is enhanced to check host.IsLive metric()
3. Assert for down management and null check for new management is added
4. Updated comments in the code as suggested by Mihaela Stoica
Signed-Off-By: Sharath Babu <sharath.babu@citrix.com>
Suppress updates to the status when the PureAsyncAction runs the action to populate the ApiMethodsToRoleCheck
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When a TargetInvocationException is raised, its InnerException property holds the underlying exception, which is what we should display.
Also ellipsise the action description (which could be an error thrown by the upload action) that is displayed on the Upload page.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Try to match the alerts by message type, not by title, because for pooled hosts the title contains the host name followed by the friendly name, while for standalone hosts the host name is not included
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Add "latestcr" field to the XenCenterVersion class
- Change the Updates class to cope with multiple latest XenCenter versions
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Also changed ApplyPatchAction and ApplyUpdateAction to install a single update to a single host, so that the appropriate action title can be displayed if an action fails. And replaced 2 hardcoded strings with resource strings.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When working on this ticket (see previous commit), I noticed that the WebClient object used in DownloadAndUnzipXenServerPatchAction did not use XenCenter's proxy settings. This commit fixes this issue. By default (with no proxy being set) the proxy variable will be null as expected.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Using standard .NET Framework functionality instead of the custom implementation of the HTTP stack. (To download a single file.)
Note that this .net class WebClient is already being used to download hotfixes. However, in that code the proxy is not set, I am fixing that in a new commit on the same ticket.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
A wrong api was being tested against the RBAC roles. Removed
vmss.protect_now and added vmss.snapshot_now.
Signed-Of-By: Sharath Babu <sharath.babu@citrix.com>
Disabled the ability to select unreachable hosts and in addition
added a try/catch block to hide error message resulting from trying
to clean up an unreachable host.
Signed-off-by: Letsibogo Ramadi <letsibogo.ramadi@citrix.com>
For ElyOrGreater hosts, we try move the existing VIFs to the desired networks. We will only destroy and create new ones for older hosts or when a corresponding VIF cannot be found in the network mapping.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Added "VM.pool_migrate" to the list of tasks suitable for meddling actions.
Removed the usage of MeddlingActionTitle other_config key, because it wasn't working as intended for two reasons:
- If XenCenter starts an action that does multiple async api calls, so multiple tasks, the action's title is assigned to all tasks as MeddlingActionTitles, so the second XenCenter instance would create multiple meddling actions with the same title.
- When a second XenCenter instance tries to see if a task is suitable for a meddling action, the MeddlingActionTitle is not yet present in the task's other_config, so the task is ignored in most of the cases.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Remove the VDI only on a best effort basis if the upload failed in the UploadSupplementalPackAction. This will make XenCenter to display the message from the original exception and not from the removal action if the latter had also failed.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed a typo that caused XenCenter to show a Trace error dialog (and to fail to do the clean-up) after applying an update in manual mode. (when RBAC is involved)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
This change implements a lightweight retry logic for downloading updates to protect against temporary network issues.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Added an extra parameter to the CreateVmFastAction constructor, which is used to specify whether to set the VM's property IsBeingCreated. In order to set this property, we need to wait for the newly created VM to appear in the cache. But we cannot do this in the action test, because the cache is not being updated. Therefore the action needs skip this step when running from the tests. The IsBeingCreated property is only used in the UI, to refresh the PVS tab after the VM is created, so the accuracy of the action test (CreateVMFastActionTest) is not affected by this change.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
* [CA-233454] PVS tab doesn't show a new VM when it's created
Refined the rules for not adding a VM to the table, if it is a template (thus not_a_real_vm), and it has the __gui__ prefix (thus hidden), we still add it, but hide it.
When its name is changed (to remove the __gui__ prefix), we update its name and re-calculate whether it should be visible (in the case of a new VM this will be true once the __gui__ prefix is gone). Also resort the table if a node changes from hidden to visible, because it appears as an addition to the table.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
* [CA-233454] Update criteria for VM visibility to include is_a_real_vm
is_a_template is changed before the name_label removes the __gui__ prefix, so this works with no other changes to the vm property changed event.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
* [CA-233454] Update when the VMs are shown in the PVS list
New observable property IsBeingCreated for VMs, set to true when they're made a hidden object, and false when they're removed from hidden objects (both in CreateVMAction). In the PVS Page when this is set to false, we re-evaluate whether a VM can be shown. This means that new VMs show here at the same time they're added to the tree (only different is tree refresh time), instead of far earlier (and before their networks were added).
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
* [CA-233454] Set IsbeingCreated in the CreateVMFastAction
* [CA-233454] Properly support the VM Fast Create action
Further changes to CreateVMFastAction, to ensure it works with PVS tab - use the __gui__ prefix when the VM is created and then change it back just before showing.
* [CA-233454] Small logic adjustments/tidying up
If batch updating fails in a pool, this code will do the clean up by
running the appropriate (next in the queue) RemoveUpdateFilesFromMaster action. In addition to Pool_update.clean(), Pool_update.destroy() will be called when needed.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
The Pool_update does not always covers all the VDIs XenCenter creates. These orphaned ones have to be deleted as well.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
The resume on server uses the CrossPoolMigrateCommand to implement the migration of the VM to the desired host. Before this change that command had no support for resuming a VM after migrating it, so the VM was not resumed. With this change, the CrossPoolMigrateWizard can take an optional (default false) parameter to restart the VM after migration. When this is true, the migrate action becomes a MultipleAction, first migrating and then restarting the VM.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Introduce fails with a Failure if the uploaded update has already been introduced, in that case XenCenter will use the existing Pool_update
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2 new radio buttons in Connection Options page, for Basic and Digest; Digest is the default as it's the most secure.
New proxy authentication method setting, which is used to configure XenAPI's HTTP class and the .NET AuthenticationManager (which handles which authentication schemes can be used by the .NET web classes).
The new setting is also transferred and used by the Health Check service.
The bug noted in CA-214653 also occurs here, but the work-around on PR#1201 for that bug will also work for this.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
- check the current number of vCPUs (by getting the latest value from the cache) before trying to change it.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- in the ConfigurePvsSiteAction, we now check if a site still exists, before trying to configure it
- added a CollectionChanged event handler in the Cache configuration dialog, and if we observe that a site has been added, we add it to the dialog as a new page
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Using new XAPI functionality in Install Update Wizard required by the new packaging format (ISO updates)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
PVS Tab:
- Move the "View PVS sites" button inside the "Configure PVS Cache" dialog (next to Remove button) and make it per-site (showing only the PVS servers from that site)
- Remove "Currently attached" column from the VMs section
- Rename "Status" column to "Read caching status"
Configure PVS Cache" dialog:
- Make sure there is a scrollbar to accommodate all hosts in a pool
- Add a confirmation dialog when a site is removed. The action is executed when the Remove button is pressed.
- When Memory SR is selected, set the maximum value to the dom0-extra-memory..
- Allow empty configuration (but see next point): The OK button should only be disabled if the PVS site name is empty
- Add an extra option in the "Cache storage" combobox, with text "Not configured", selected by default on a new site. When this is selected, we will remove the existing entry in pvs_cache_storage and will not create a new one.
- When a PVS site is deleted (forgotten), we first delete all the associated PVS_servers, otherwise the site cannot be deleted.
- Allow move of multiple VDIs
- CA-187659: show better messages when batching move/migration of multiple VDIs.
- Show different tooltips for single vs. multiple VDI move/migration/deletion.
- Refactored the MoveDiskDdialog. Removed the inherited class VDIMigrateDialog and
the batching manager as it was not very different from its parent, it was registering
the events twice, and was batching migration of even single VDIs.
- Tidied up the Move- and MigrateVirtualDisk commands so they're easier to compare.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- new image for PVS_site
- added cache size restrictions based on the SR selected
- added button to remove the PVS site on the page
- fixed the error where the subtext for a new PVS sites showed as "Not configured" even after it has been configured
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>