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.
- change the URLs to the production site
- for development and testing these settings should be changed to the staging site via registry keys
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
- 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>
-When detaching an SR, we detach the slaves first
-When reattaching the SR, we attach the master first
This fix was required by thin provisioning, but it does worth to use the same logic regardless of the provisioning method.
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.
- Changed the friendly error name for VM_HOST_INCOMPATIBLE_VIRTUAL_HARDWARE_PLATFORM_VERSION to "The VM's Virtual Hardware Platform version is incompatible with this host."
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
When an upload request is triggered,
1. fetch the upload token from CallHomeSettings,
2. generate the server status report and upload it to CIS server,
3. update the corresponding fields of CallHomeSettings when the
upload is finished successfully or failed.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
In the CallHomeAuthenticationAction.SetUploadTokenSecret() check if the tokenKey is null (public static, may be reused later).
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 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>
- Changed the friendly error name for VM_HOST_INCOMPATIBLE_VIRTUAL_HARDWARE_PLATFORM_VERSION to "The VM is incompatible with the Virtual Hardware Platform version of this host."
(This commit also includes changes to the auto-generated designer file, which have been missed n a previous commit)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- update XenModel with the api bindings containing xapi fields and methods related to this task
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Returns true if this VM is Windows.
Ignore PV guests, then check if viridian platform property is set.
This is based on the assumption that the viridian flag is always true for a windows VM.
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>
- changes following code review
- added some more logging of exceptions, also some null checks
Signed-off-by: Mihaela Stoica <mihaela.stoica@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 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>
- 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>
- 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>
"* 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>
-Added missing parameter to get_required_space plugin call.
-The required space is not shown in the notification when we are unable to tell how much space is required .
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
-Removed extra filters, but the default combined one
-removed xsoem extension from the related error message
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
-Now there are three filers in the open file dialog: updates&supp. packs, updates, supp. packs
-Also removed xsoem extension from the filter, because it is not supported anymore
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- The problem was that we didn't create a vgpu if the vgpu_type was null. But for Linux HVM, this is gpu passthrough case.
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
- 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>
-Following code review: Asserting instead of doing checks, because it makes more sense here
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
-ServerXenObject-PropertyChanged eventhandler now returns immediately for a non-VM sender
-Changed IXenObject to VM wherever possible to explicitly state that those methods are expecting VMs
-The UpdateDockerContainersForVM method sets the dockerContainersChanged flag only if there are changes
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
- 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>
- 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>
- A VM can have vGPU if it is HVM and the the allow-vgpu restriction is absent or is non-zero
- allow-vgpu is 0 for HVM Linux VMs
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- set container's opaque_ref to parent.opaque_ref + uuid, to make it unique inside a connection (the uuid is only unique inside a 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>
- when we update the containers, we should update existing objects (if they exist), instead of always creating new ones.
Signed-off-by: Mihaela Stoica <mihaela.stoica@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>
-Fixing regression because of failing unit test: XenAdminTests.SearchTests.SearchMarshallingTests.RunTest
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
The 'Updates' section on host's General tab displays which packs have been installed onto a host, including the version number
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
UploadSupplementalPackAction:
- use http-put with the default timeout
- throw current exception in RemoveVDI (instead of encapsulating it in a new one)
- add other_config key before uploading to make sure the vdi has this flag set from the beginning of its lifetime
- upload progress bar now shows the total progress per row
Also included a cosmetic rewrite of PatchingWizard_PatchingPage,GetUpdateName function
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- add an entry in the VDI's other_config to identify it as supp pack iso, so that we can easily find these vdis and remove if needed
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1.Add xapi version check in cream since Cream and Creedence have the same platform version
2.Check feature-ts2 to see if turn on RDP feature can use on specific VM PV tool
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- Select a supp pack in the hotfix wizard
- Recognise that it's a supp pack not a hotfix
- Check if there's enough space on a SR to contain it: (1) default SR if shared or (2) any shared SR or (3) local SR on each host in pool
- Create a VDI to contain it
- Upload the supp pack to the VDI
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- In the case that there are two hosts in a pool, one with GPU and one without, then the one without will display a text saying "There are no GPUs on this server".
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Changes following code review:
- Added VM.CanHaveVGpu function (at the moment just returns CanHaveGpu, but it will change in the future)
- Added vGPU_type.IsPassthrough function and used it everywhere we needed to test for passthrough (max-heads==0)
- Simplified code in Helpers.GpuCapability, Helpers.VGpuCapability, NewVMWizard (gpuCapability), MainWindow and GpuRow
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
New properties:
- Pool.HasGpu = Pool has at least one PGPU
- Pool.HasVGpu = Pool has at least one PGPU that HasVGpu
- PGPU.HasVGpu = PGPU has at least one supported_VGPU_type that is not pass-through
New or modified helper functions:
- Helpers.GpuCapability = GPU feature not restricted (by licensing) and Pool.HasGpu
- Helpers.VGpuCapability = vGPU feature not restricted (by licensing) and Pool.HasVGpu
- Helpers.ClearwaterSp1OrGreater = API version is 2.1 or greater
The GPU dialogs are displayed as follows:
- GPU page on VM properties dialog: Visible only if VM.CanHaveGpu and the GPU feature not restricted (by licensing)
- GPU page on New VM Wizard: Visible only if VM.CanHaveGpu and the pool has GPU capability (Helpers.GpuCapability)
- GPU page on Pool properties dialog: Visible only if the pool has vGPU capability (Helpers.VGpuCapability)
- GPU tab: Visible only if the pool has GPU capability (Helpers.GpuCapability) and is Clearwater SP1 or greater
- On the GPU tab, the "Placement policy" panel: Visible only if the pool has vGPU capability (Helpers.VGpuCapability)
- On the GPU tab, the "Edit" button on the "vGPU types" panel: Visible only if the PGPU.HasVGpu and vGPU feature not restricted (by licensing)
Also:
- VM.CanHaveVGpu function renamed to CanHaveGpu
- On the GPU tab, renamed "Allowed vGPU types" to "vGPU types
Instead of showing just the name, this code is showing name with location information in title for all objects that appear in the tree view.
(A new property (NameWithLocation) with a getter accessor defined in IXenObject and has been implemented as virtual in XenObject and overridden at several child classes.)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Show pool (or standalone server) name on the Upload page.
Also corrected some resource strings.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Added new page to the patching wizard, called "Upload" which displays the upload actions for each server and the progress of these actions
- MultipleAction: added the functionality to optionally stop the action on first failure
- Fixed the error where an existing patch downloaded from another server and then uploaded to a new one was not deleted on cancelling the wizard [CA-156788]
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>