Commit Graph

45 Commits

Author SHA1 Message Date
Mihaela Stoica
01b011c982 CA-329399: Improve the error message displayed if the update wizard if a host cannot be evacuated.
If a host cannot be evacuated because other hosts in the pool are maintenance mode and pending a reboot following an update installation, then include instructions to reboot those hosts and then press Retry.
Also updated the text for the Manual mode, removing the reference to installing other updates and doing a reboot manually at the end, because that won't be always possible, due to the fact that now we put the hosts in maintenance mode before installing the update.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-11-08 10:27:49 +00:00
Konstantina Chremmou
629e2f641a CA-326161: Check for null before accessing the ManualTextInstructions
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-09-02 08:05:48 +01:00
Mihaela Stoica
adbc768851 CA-309037: If live patching fails, do not attempt to reboot the host, but show a warning in the wizard
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-02-15 11:18:28 +00:00
Mihaela Stoica
788f0cd9df CA-309037: Do the host evacuation before applying the updates
If a host needs to be rebooted after the update application, and the update is not a live patch, then do the host evacuation before applying the update.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-02-15 11:18:28 +00:00
Konstantina Chremmou
db6b00265b CA-292363: Provide the user the option to reconsider cancellation of the update
or upgrade process (either when cancelling the wizard itself or when exiting
the application). Rephrased confirmation message for clarity.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-01-15 17:12:09 +00:00
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
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
6b2a9c3944 CA-293153: Moved the logic calculating the resolved precheck actions to be
reverted to the new class UpdateUpgradeWizard which serves as base for the
Patching and the RPU wizards. Pass the list of resolved problems to the
automated updates page and not the actions, so as to prevent premature (i.e.
on creation as opposed to on start) addition to the global list shown on
the Events page.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-07-02 17:37:52 +01:00
Konstantina Chremmou
3107c111f0 CA-293153: The logic calculating the resolved precheck actions to be reverted
is now in one place, namely the PatchingWizard_PrecheckPage.UnwindChangesActions.
The pages following this page use now this list instead of the problems
encountered, so we ensure that the update/upgrade plans do not include the
unwind action if no resolution of problems took place on the prechecks page.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-07-02 17:37:52 +01:00
Konstantina Chremmou
d3f761b070 Reworked the logging for the plan actions. (#2109)
* Deprecate set but unused Status property in favour of ProgressDescription.
* Deprecate set but unused TitlePlan property.
* Deprecated property Title in favour of ProgressDescription.
* Removed unused plan RebootHostPlanAction.
* Updated event declaration.
* Removed property Visible. The plan is to have the actions log their history as soon as some is available.
* Reworked the logging for the plan actions. The main change is the replacement of
the ProgressDescription with a stack where all the steps of an action are stored,
i.e. the action is responsible for its history, not the worker running it.
* Lock the progress history before accessing it.
* Better handling of error logging and user cancellation.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-06-26 14:04:51 +01:00
Mihaela Stoica
2af3de8e7f CA-287430: Fixed the issue where the "Install Update" page of the patching wizard does not show the information on the host reboot steps.
- 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>
2018-04-10 11:08:18 +01:00
Mihaela Stoica
1925fc9ec4 CA-285215: Cancel button should be enabled on the Patching wizard when the update installation is in progress
- also fixing an error on the patching wizard where a null reference exception is thrown if, when the wizard is cancelled, the host where an update has been uploaded is not connected anymore

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-04-09 08:47:26 +01:00
Konstantina Chremmou
ee648135f6 Since it is easy to forget calling the base class method at the beginning of the
PageLoaded override in derived classes, enforce it by wrapping the page specific
code in a new virtual method, which the derived classes can override and PageLoaded
can call after its own logic.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-03-09 11:22:26 +00:00
Konstantina Chremmou
4b6e826ed3 CA-284125: Prioritise a pending host restart over a mandatory toolstack restart.
For this purpose, the evacuate-reboot-bringbabiesback triplet was replaced by a
new RestartHostPlanAction, which allows fallback to toolstack restart if live
patching has succeeded. Also, created new abstract class HostPlanAction to
reduce code duplication.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-03-06 15:12:04 +00:00
Konstantina Chremmou
a22a9a41e3 A couple of small inefficiencies.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-03-06 14:17:16 +00:00
Konstantina Chremmou
71e554cc39 Removed duplicate logic calculating VM groups from the WizardPages and moved it the Host class as extension methods.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-03-06 14:17:15 +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
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
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
f4a0f3ae40 CP-19303: XenCenter: Use new livepatching codes
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-20 17:19:42 +01:00
Mihaela Stoica
9398837c38 Merge pull request #1205 from GaborApatiNagy/CAR-2245_CP-19266_2
CP-19266 & other changes
2016-10-13 15:08:38 +01:00
Gabor Apati-Nagy
a722c8b853 CAR-2245: Remove unused method
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-12 16:54:53 +01:00
Gabor Apati-Nagy
5df1593989 CP-19264: Live Patching in XC: Use Pool_update version of Host.patches_requiring_reboot in XenCenter
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-10-12 14:48:17 +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
Gabor Apati-Nagy
fdb32cf579 CA-220599: Supplemental Pack installed via XenCenter does not get listed in updates box
Fixed regression caused by 5555709337.
Supplemental packs can now be installed again in automatic mode.

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-09-12 17:07:59 +01:00
Callum McIntyre
d302815b66 CP-17848: Commit to hand over. PatchingWizard_UploadPage.cs contains new code to introduce a Pool_update, PatchingWizard_PatchingPage.cs to apply and clean it. 2016-09-09 12:02:59 +01:00
Callum McIntyre
49a586430e CP-17848: Rename UpdateType enum NewSuppPack to ISO, since for this ticket we will handle all updates as ISOs 2016-08-31 10:42:09 +01:00
Callum McIntyre
7f5390e9c4 CP-18618: If live patching fails, warn the user
If we are expecting to live patch, but at the end
hosts.patches_requring_reboot contains the patch, then warn the user that
live patching has failed for the host - and it needs to be rebooted.

Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-08-24 11:13:58 +01:00
Gabor Apati-Nagy
7ee2e605ee CP-18012: Use extended precheck information in Update Wizard
This commit implements the check for LiveUpdate capability of a patch. If
the patch is completely live-updatable, XenCenter will not restart the
host (but will do further checks once it has finished installing the
update - separate ticket)

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-08-23 18:31:23 +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
Mihaela Stoica
3f25c5868f CP-17161: Add 'using' statement around dialogs to ensure garbage collection
- fix all ThreeButtonDialog usages (and some other dialogs that I've came across)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-06-20 10:49:12 +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
Gabor Apati-Nagy
e011ade0da CA-175498: Even more logging
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-03-01 16:51:01 +00:00
Gabor Apati-Nagy
b0c8004230 CA-175498: [HFP Tardy] Error "Remove the patch backup files" when patch-apply fails and user tries to re-apply the patch is not shown on XC.
log the error message that is actually displayed on UI

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-03-01 16:10:24 +00:00
Gabor Apati-Nagy
6ec9257667 CA-175498: [HFP Tardy] Error "Remove the patch backup files" when patch-apply fails and user tries to re-apply the patch is not shown on XC.
Show a more detailed error message

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-03-01 16:06:42 +00:00
Gabor Apati-Nagy
b8e447afa3 CA-196315: XS65ESP1018 not showing up in XenCenter Updates (on staging)
Fixed code to treat uuids of patches case-insensitive when consuming, but not changing them (eg. to lowercase) to keep compatibility with older XAPIs.

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-02-08 10:14:05 +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
Carmen Agimof
fa61ff27c7 CP-13041 : Remove the hotfix after installing it.
Signed-off-by: Carmen Agimof <Carmen.Agimof@citrix.com>
2015-07-08 17:35:50 +01:00
Mihaela Stoica
de4ff847c5 CA-161620: If the supplemental pack installation fails, then XenCenter will display a message suggesting the user refers to the users guide for installing via the CLI.
- 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>
2015-02-27 17:00:03 +00:00
Mihaela Stoica
f617b4ca26 CP-10621, CP-10824: Supp Pack installation through XenCenter: Changes following code review
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>
2015-01-28 09:51:25 +00:00
Mihaela Stoica
5b33590df0 CP-10824: Supp Pack installation through XenCenter: Install supp pack from vdi
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-01-26 15:43:36 +00:00
Mihaela Stoica
908025a43e CA-123914: Install update wizard: When applying a patch to multiple pools, the "revert prechecks" action should be executed only once, after the patch is applied to all pools.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2014-02-03 11:13:45 +00:00
Konstantina Chremmou
077cb17deb CP-5750: Changed the declaration for the ActionBase events Completed, Changed and
NewAction to use the Action<ActionBase> delegate instead of EventHandler. Thus
there is no need to fire them with Empty or null EventArgs and on several occasions
we avoid casting objects in the event handlers.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2013-08-09 17:20:33 +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