Commit Graph

320 Commits

Author SHA1 Message Date
Gabor Apati-Nagy
eac7109710 CA-236705: [XSO-662]: Applying Updates as Non-root Pool_admin user causes exception and crash of XenCenter
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>
2016-12-15 18:04:40 +00:00
Gabor Apati-Nagy
b0ca08ae6d CP-20065: Change "Automatic Update" to "Automated Updates"
made naming more consistent

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-12-10 14:44:15 +00:00
Gabor Apati-Nagy
0982e5d285 CA-234638: XenCenter does not retry downloading: Workaround for temporary download problems
Sleep after an error has been seen

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-12-07 14:35:39 +00:00
Gabor Apati-Nagy
e2e0c46fe6 CA-234638: XenCenter does not retry downloading: Workaround for temporary download problems
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>
2016-12-01 17:50:25 +00:00
Mihaela Stoica
c395a8ce14 CA-233454: Fix the action test
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>
2016-12-01 12:09:03 +00:00
mcintyre94
7f2ecb6eab [CA-233454] PVS tab doesn't show a new VM when it's created (#1314)
* [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
2016-11-30 12:24:02 +00:00
Gabor Apati-Nagy
5cd032525c CA-229009: VDI is not deleted for the updates
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>
2016-11-24 10:40:06 +00:00
Gabor Apati-Nagy
7790c8e51d CA-229019: XenCenter behavior on installing already uploaded update
Code review follow up commit

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-11-10 17:46:07 +00:00
Gabor Apati-Nagy
4fad0d309a CA-229019: XenCenter behavior on installing already uploaded update
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>
2016-11-10 17:15:40 +00:00
Callum McIntyre
9b1a3315f0 [CA-226897] Resume on Server option won't automatically resume the VM
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>
2016-11-03 15:35:25 +00:00
Mihaela Stoica
adaa084d7a Merge pull request #1255 from GaborApatiNagy/master_packaging_fixes
Packaging-related bugfixes
2016-11-01 17:02:18 +00:00
Gabor Apati-Nagy
bfdca9d7bf CA-226253 XenCenter: Handle new error code when a disk space precheck error occurs
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-11-01 15:46:40 +00:00
Konstantina Chremmou
c7994c286d CA-227272: Ignore unresolved VDIs first, then check if the storage mapping contains
the resolved ones and then try getting the target SR from the mapping.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-10-28 10:57:10 +01:00
Gabor Apati-Nagy
b2a82ae514 CP-19218: Fixed: Swallowing exceptions
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-21 13:08:26 +01:00
Gabor Apati-Nagy
668979c29f Merge remote-tracking branch 'github_xenadmin/master' into CAR-2245_temp
Conflicts:
	XenAdmin/TabPages/GeneralTabPage.cs
	XenAdmin/Wizards/PatchingWizard/PatchingWizardModeGuidanceBuilder.cs
	XenAdmin/Wizards/PatchingWizard/PatchingWizard_ModePage.cs
	XenAdmin/Wizards/PatchingWizard/PatchingWizard_SelectServers.cs
	XenAdminTests/WizardTests/PatchingWizard/PatchingWizardModeGuidanceBuilderTests.cs
	XenModel/Network/Cache.cs
	XenModel/XenModel.csproj
2016-10-20 19:12:57 +01:00
Gabor Apati-Nagy
0c73e3c583 CP-19303: use the static string.Equals instead
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-20 17:56:39 +01:00
Gabor Apati-Nagy
7d0c2e9b36 XenCenter: Handle already uploaded updates
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>
2016-10-20 17:20:51 +01:00
Gabor Apati-Nagy
225885ac45 CA-225731: XenCenter: Find the ISO update in the zip file defined in CFU
Always define the extension to search for

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-19 13:39:14 +01:00
Gabor Apati-Nagy
8ac6774e80 CA-225731: XenCenter: Find the ISO update in the zip file defined in CFU
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-19 11:29:57 +01:00
Mihaela Stoica
329f084a7e Merge branch 'CAR-2184' to master
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>

Conflicts:
	XenModel/XenAPI-Extensions/SR.cs
2016-10-18 10:18:47 +01:00
Mihaela Stoica
dabe77e0d0 CA-223374: Fix typo
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-10-12 12:53:30 +01:00
Mihaela Stoica
34a4d44987 CA-223374: Able to unplug vCPUs from running VM when changing vCPU from two iCenters concurrently
- 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>
2016-10-10 12:37:11 +01:00
Gabor Apati-Nagy
6296277317 Merge pull request #1188 from kc284/vm_migration
CA-220218, CA-205799, CA-205791 plus one or two other issues and refactoring
2016-10-07 16:18:49 +01:00
Mihaela Stoica
d6c735bd18 Merge pull request #1173 from kc284/migration
CA-220511, CA-187659, CA-220216 plus some refactoring and minor enhancements.
2016-10-07 10:11:07 +01:00
Mihaela Stoica
c8d86baeee CP-19086: More improvements to the PVS cache UI
- 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>
2016-10-05 14:12:24 +01:00
Gabor Apati-Nagy
5cfce00e01 CP-17848: Apply hotfixes using new API calls
Changes following the code review

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-04 23:26:35 +01:00
Gabor Apati-Nagy
5966c5399a Merge remote-tracking branch 'github_xenadmin/master' into CAR-2245_temp
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>

Conflicts:
	XenAdmin/Wizards/PatchingWizard/PatchingWizard_PatchingPage.cs
2016-10-04 15:10:47 +01:00
Gabor Apati-Nagy
7d62621dd3 CP-17848: Apply hotfixes using new API calls
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>
2016-10-04 14:58:54 +01:00
Mihaela Stoica
aebffe9b13 CP-19086: Improvements to the PVS cache UI
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.
2016-10-01 00:23:28 +01:00
Konstantina Chremmou
1acc717417 CA-205791: Added detail to the action migrating a VM that's not resident on a host.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-30 13:45:52 +01:00
Mihaela Stoica
18fb723f6a CP-18889: Implement UI changes for vCPU hotplug (#1159)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-09-29 12:11:37 +01:00
Konstantina Chremmou
eb3fbe2ac8 Corrections and refactoring on VDI move/migrate:
- 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>
2016-09-28 09:50:43 +01:00
Mihaela Stoica
82dea74899 CP-17920: Add dialog for PVS cache configuration
- 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>
2016-09-27 16:34:26 +01:00
Mihaela Stoica
fe6144ba70 CP-17920: Add dialog for PVS cache configuration
- this commit contains a temporary image for PVS_site

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-09-26 17:44:17 +01:00
Mihaela Stoica
f2b1443064 Merge branch 'master' into CAR-2184
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>

Conflicts:
	XenModel/Messages.Designer.cs
	XenModel/Messages.resx
2016-09-26 13:26:31 +01:00
Mihaela Stoica
c6eab65fdf Merge pull request #1154 from kc284/master
Some corrections on VMStorage page and disk move/migrate/detach
2016-09-22 15:21:48 +01:00
mcintyre94
dd42394a25 CP-16922: Implement GUI for enabling PVS read caching (#1179)
* 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.
2016-09-22 15:08:15 +01:00
Callum McIntyre
336e4d8149 CA-218260: Reverting to Snapshots causes VM to go back to parent host
Move the test for whether we can boot the VM on the previous host into the VmSnapshotRevertAction, and run it using the Session of the action.
2016-09-22 13:36:43 +01:00
Callum McIntyre
d30ff533fd CA-218260: Correcting nesting
The else if (vm.power_state == vm_power_state.Suspended) block had been incorrectly moved out an indent level to the outer if.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-09-21 17:45:42 +01:00
Callum McIntyre
502e386e53 CA-218260: Reverting to Snapshots causes VM to go back to parent host
Where we have a host the VM is running on (ie vm.resident_on is not null) at the time it is reverted, attempt to start/resume on that host if possible, instead of the home server of the VM.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-09-21 17:39:03 +01:00
Mihaela Stoica
a04e8dbccf Merge pull request #1123 from GaborApatiNagy/CA-150816
CA-150816: fix: G11n:I18n: Hardcode issue "Set VM other_config" on Authentication dialog.
2016-09-20 14:02:18 +01:00
Gabor Apati-Nagy
9b383054af CA-222118: CentOS 7 VM's XenServer Tools installation message is misleading in Notifications
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-09-19 14:10:21 +01:00
Callum McIntyre
2b215ffd78 Merge branch 'master' of https://github.com/xenserver/xenadmin into CP-17848
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>

# Conflicts:
#	XenAdmin/Wizards/PatchingWizard/PatchingWizardModeGuidanceBuilder.cs (resolved using master)
2016-09-09 12:59:29 +01:00
Konstantina Chremmou
d2a3a17369 Fixed typos.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2016-09-06 14:53:46 +01:00
Mihaela Stoica
24d67cca10 Fix an error in ParallelAction with no subactions
- Immediately complete the ParallelAction when there are no subactions to be executed, to avoid on infinite lock while waiting for the actions to be completed.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-09-01 17:42:07 +01:00
Callum McIntyre
c9ed8a1f68 CP-17848: XAPI changes to support new update packaging calls/structrures 2016-08-30 17:11:47 +01:00
Gabor Apati-Nagy
1c5ba794b4 CA-217232: Fixed regression caused by the fix for CA-216935
Changes following the code review
2016-08-18 16:00:50 +01:00
Gabor Apati-Nagy
53619c775d Merge remote-tracking branch 'github_xenadmin/master' into REQ-156_github_master
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>

Conflicts:
	XenAdmin/Wizards/PatchingWizard/PatchingWizard_PrecheckPage.cs
	XenAdmin/Wizards/PatchingWizard/PatchingWizard_SelectServers.cs
	XenModel/Actions/ParallelAction.cs
	XenModel/FriendlyNames.resx
	XenModel/Messages.Designer.cs
	XenModel/Messages.resx
2016-08-18 12:22:40 +01:00
Konstantina Chremmou
73a549a4d0 Improvements made while investigating CA-218953:
- 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>
2016-08-17 22:35:01 +01:00
Gabor Apati-Nagy
c7482b8c93 CA-150816: fix: G11n:I18n: Hardcode issue "Set VM other_config" on Authentication dialog.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-08-15 17:43:20 +01:00