Commit Graph

47 Commits

Author SHA1 Message Date
Konstantina Chremmou
ada6f7dac7 CA-296490: Upload single update to multiple pools in parallel. (#2338)
* 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>
2019-01-10 13:24:42 +00:00
Mihaela Stoica
f161471cd9 CA-302463: Change the action that applies an update to do an async call, so that the calling code notices if the connection has been lost while installing the update
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>
2018-11-21 13:51:20 +00:00
Konstantina Chremmou
b7fd97af11 Removed obsolete UpdateType.Existing and associated properties and methods.
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>
2018-11-13 11:08:10 +00:00
Konstantina Chremmou
b36534c157 CA-293813: Patch pools in parallel when installing a single update/patch or supplemental package. (#2183)
* 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>
2018-08-17 12:05:16 +01:00
Konstantina Chremmou
a55d9d3edd CA-293764: Do not suppress history for the actions applying hotfixes because
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>
2018-07-13 12:39:33 +01:00
Konstantina Chremmou
7188a79263 Added padding to the upload/download progress numbers to reduce left-right message "jumping".
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-07-02 17:37:52 +01:00
Konstantina Chremmou
f16cc7f770 Made UploadPatchAction and UploadSupplementalPackAction report progress of uploaded bytes.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-06-28 12:25:56 +01:00
Mihaela Stoica
93a154e04f CP-28282: Unit tests fix + improved message
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-06-15 16:05:37 +01:00
Mihaela Stoica
c702399d95 CP-28282: Update the disk space precheck to calculate the required space according to the new workflow (apply all hotfixes to a host before moving to the next one)
- this commit covers the post-Ely case, where updates are uploaded to storage repositories

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-06-13 17:24:33 +01:00
Konstantina Chremmou
63c6b817d5 CA-40854: The Session's uuid is in reality its opaque_ref. Use the opaque_ref so
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>
2018-02-21 14:08:01 +00:00
Konstantina Chremmou
ae22560ce8 Converted all extension get properties of the API classes to methods in order to
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>
2017-09-03 03:35:30 +01:00
Mihaela Stoica
537e569a62 CP-21161: Do not call the disk-space plugin cleanup functions on Ely and above hosts
- 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>
2017-06-27 13:48:54 +01:00
Mihaela Stoica
6b26093303 CA-242918: Improve the exception shown in XenCenter if the hotfix upload fails
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>
2017-03-16 11:41:14 +00:00
Mihaela Stoica
174eb6c67f CA-230621: Disk space calculation is logged incorrectly in the XenCenter log
Only log the cleanup message if the available space is less than the required space

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2017-03-10 16:33:50 +00:00
Gabor Apati-Nagy
6693570b11 Merge pull request #1428 from MihaelaStoica/CA-238265
CA-238265: Add the action title to the error message displayed on the…
2017-02-08 11:47:38 +00:00
Mihaela Stoica
ef331986c7 CA-238265: Add the action title to the error message displayed on the Install Update page of the patching wizard.
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>
2017-02-06 13:04:07 +00:00
Letsibogo Ramadi
045c405f92 CA-239951 - Patching wizard allows selection of unreachable hosts
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>
2017-01-25 10:28:11 +00:00
Gabor Apati-Nagy
978f85233c CA-176169: Added copyright statement to files which it was missing from
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2017-01-16 20:14:56 +00:00
Gabor Apati-Nagy
7c0bc50b4a CA-176169: Changed copyright statements to include the comma in Citrix Systems,
Inc.

Signed-off-by: Gabor Apati-Nagy<gabor.apati-nagy@citrix.com>
2017-01-16 19:59:50 +00:00
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
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
Gabor Apati-Nagy
16afbd3bed CA-217382: Batch updates: Install batch updates is not showing low disk space error in pre-checks when host dom0 is full
Fixes following the code review

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-08-08 18:05:42 +01:00
Gabor Apati-Nagy
f93a977ddf CA-217382: Batch updates: Install batch updates is not showing low disk space error in pre-checks when host dom0 is full
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>
2016-08-05 18:05:09 +01:00
Frezzle
5555709337 [CA-209198] Allowed to attempt to install hotfix when it is already applied
XenCenter no longer ignores checking if the master host already has the specified patch applied; it now checks before trying to apply it, which means we get no error in the Patching Wizard's Patching Page.

Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
2016-07-19 17:49:40 +01:00
Gabor Apati-Nagy
deb4d5724c CP-15717: UI: Implement basic upload/precheck/patch/cleanup logic
Fixes following the code review

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-05-04 13:47:41 +01:00
Gabor Apati-Nagy
d3914a2318 CP-15717: UI: Implement basic upload/precheck/patch/cleanup logic
intermediate commit

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-05-04 11:02:16 +01:00
Mihaela Stoica
72ec9df41a CA-201645: The Install Update wizard should delete patch installation file if manual mode is selected
- Added PoolPatchCleanAction which is called for each pool after the patch has been applied on all selected hosts

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-03-03 11:34:00 +00:00
Stephen Turner
f2f590e3e7 CP-14647: More changes after read-through, including getting rid of OEM edition 2015-11-08 16:31:48 +00:00
Mihaela Stoica
5c80fcc4ea CA-180120: Changed the progress description displayed on the Upload page in the Patching wizard
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-10-15 14:15:10 +01:00
Carmen Agimof
e04203a5a3 Removes unused variable. 2015-09-08 13:58:13 +01:00
Carmen Agimof
22b3450dcd CA-181442: Make the list that contained all NewUploadedPatches a Dictionary that matches the patch with its path. This is helpful when trying to upload to a server where the update it is already uploaded (and therefore we do not do the upload again and we cannot get the patch).
Adds a flag in the UploadPatchAction that is used when checking if the file should be deleted on cancel.
2015-09-07 12:18:01 +01:00
Carmen Agimof
05884ea9be CA-181442: Cancelling the wizard while upload is in progress does not cause an unhandled exception anymore. 2015-09-04 17:18:26 +01:00
Carmen Agimof
9b0f478952 CA-181390: Solved issue related to taking a file from disk that is not in the list of updates taken from the Citrix website. Created a dictionary that contains all the uploaded updates(the patch path) and on which hosts they were applied.
- Not applied updates do not appear anymore in the General Tab of a pool. (Related to CA-180577)
- If we apply a patch that was already applied (happens when we take a file from disk that is not in the updates list taken from the Citrix website -> no metadata), on cancel we are now removing the uploaded patch from the host.
2015-09-04 17:09:22 +01:00
Gabor Apati-Nagy
35b3edd590 CA-163778: [CAR-1711] Cleanup not working
-When calling cleanup_disk_space, excluded patch is passed only when it is
not null

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2015-03-13 13:47:45 +00:00
Gabor Apati-Nagy
f6dad3c2a2 CA-163777: [CAR-1711] Incorrect message for cleanup
-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>
2015-03-11 14:49:07 +00:00
Stephen Turner
8aae324f0a Merge 2015-02-23 14:34:35 +00:00
Stephen Turner
5adab0cfa6 CAR-1711: Download update from a pool name, not an IP address 2015-02-20 13:39:13 +00:00
Stephen Turner
a2883d8252 CA-161460: Present a helpful error message when a patch we are trying to download from another server has been deleted 2015-02-20 13:07:20 +00:00
Mihaela Stoica
1a484b99ff CP-11135: Expand patch precheck to account for OUT_OF_SPACE exception
- 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>
2015-02-16 11:11:30 +00:00
Gabor Apati-Nagy
878229e9a8 CP-10798: XenCenter work for CAR-1711: Pre-Checks for hotfix installation space
-Fixed code following the code review

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2015-02-12 14:00:51 +00:00
Gabor Apati-Nagy
91789256e8 CP-10798: XenCenter work for CAR-1711: Pre-Checks for hotfix installation space
-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>
2015-02-12 13:13:45 +00:00
Mihaela Stoica
19f66414a7 CP-10797: Ensuring sufficient disk space for service pack installation: Changes following code review
- 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>
2015-02-06 10:34:18 +00:00
Mihaela Stoica
48636e12d6 CP-10797: Ensuring sufficient disk space for service pack installation: In the Install Update Wizard check if there is enough space to upload a hotfix
- 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>
2015-02-05 17:01:14 +00:00
Mihaela Stoica
13c6d323c3 CA-147163: Non-modal hotfix upload progress dialog
- 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>
2015-01-09 12:54:12 +00:00
Mihaela Stoica
6a6be458fd CA-110209: Install Update Wizard: If the patch is already uploaded, then we use it and ignore the "already exists" error. 2014-04-30 13:31:39 +01:00
Mihaela Stoica
bd36a85bff CP-4816: Initial commit to git repo
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2013-06-24 12:41:48 +01:00