* CA-281646: Do not download the update again when using an update from disk
When applying a "new version" update, XenCenter starts an automated updates sequence that by default downloads all the updates. However, when using an update from disk, we shouldn't download it again.
With these changes, when an update from disk is used we save the [update, path] mapping, which we then use in the automated updates sequence, so we don't download that update again.
Also fixed a bug where a zipped update file from disk is not identified as a new version.
* CA-281646: Remove unused directive
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Increased the wait between host_enable attempts, allowing to wait more for the host to reboot.
This will affect Automated Updates and other normal Patching Wizard
operations as well.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
* 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>
In rare cases, the GetMaster could return null, causing the update progress to fail with "Pool_patch or Pool_update not found". (when the Cache hasn't been populated by the execution gets here)
This commit drops GetMaster and uses a pre-saved masterUuid instead of waiting for the Cache what would be the other way to solve this issue.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
This commit fixes a bug in the Update Wizard that causes XenCenter to not restart Toolstack when it should in the following case: in Automated Mode, when the update sequence for a host has an update that contains live-patch with restartHost guidance (and guidance-mandatory=false) followed by an update with Toolstack restart guidance.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>
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>
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>
This fixes the NullReferenceException that occurs when trying to evacuate a host after a non-livepatch update (that requires reboot) has been installed
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
XenCenter will check host.patches_requiring_reboot when a host restart is due while a batch update is in progress. If the restart is not required, XenCenter will skip relevant PlanActions.
The intention here is to check this whenever a restart is due according to the original schedule - this way a completely livepatchable update can prevent the restart while the key batch hotfixing logic is not changed.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Comparing uuids instead of references that likely will be changed after the Cache has been repopulated.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
The PatchPrechecksOnMultipleHostsInAPoolPlanAction did not filter the patchmappings by masterhost, so with some probability, it could choose the wrong mapping (pool_patch object for the same update, but in different pool). This bug is being fixed in this commit, other changes only renamed (for more consistent naming) a class and removed an unused field.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@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>