Invoke-XenPoolUpdate

Last published : Nov 12, 2026
Invokes an operation on a PoolUpdate object.

Syntax

Invoke-XenPoolUpdate [-PoolUpdate] <Pool_update>
    -XenAction {Introduce | Precheck | Apply | PoolApply | PoolClean} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenPoolUpdate [-Ref] <XenRef[Pool_update]>
    -XenAction {Introduce | Precheck | Apply | PoolApply | PoolClean} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenPoolUpdate [-Uuid] <guid>
    -XenAction {Introduce | Precheck | Apply | PoolApply | PoolClean} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenPoolUpdate [-Name] <string>
    -XenAction {Introduce | Precheck | Apply | PoolApply | PoolClean} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]

Description

Invokes an operation on a PoolUpdate object. Use the -XenAction parameter to select which operation to perform.
Introduce: Introduce update VDI.
Precheck: Execute the precheck stage of the selected update on a host.
Apply: Apply the selected update to a host.
PoolApply: Apply the selected update to all hosts in the pool.
PoolClean: Removes the update's files from all hosts in the pool, but does not revert the update.

Parameters

-Async

If set, the operation runs asynchronously and returns a Task object that can be used to track its progress.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-BestEffort

If set, the cmdlet continues processing further objects instead of throwing a terminating error when an operation fails for one object.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-Confirm

Prompts for confirmation before running the cmdlet.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases cf

-Name

The name of the PoolUpdate to operate on.
Attribute Value
Type string
Required True
Position 0
Accepts pipeline input True (ByPropertyName)
Aliases name_label

-PassThru

If set, the cmdlet returns the affected object. By default the cmdlet does not generate any output.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-PoolUpdate

The PoolUpdate object to operate on.
Attribute Value
Type Pool_update
Required True
Position 0
Accepts pipeline input True (ByValue)

-Ref

The PoolUpdate object to operate on, specified by its opaque reference.
Attribute Value
Type XenRef[Pool_update]
Required True
Position 0
Accepts pipeline input True (ByPropertyName)
Aliases opaque_ref

-SessionOpaqueRef

The session object on which to run the cmdlet. This overrides the default session and lets you target a specific open XenServer connection.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-Uuid

The UUID of the PoolUpdate to operate on.
Attribute Value
Type guid
Required True
Position 0
Accepts pipeline input True (ByPropertyName)

-VDI

The VDI which contains a software update. Accepted when -XenAction is Introduce.
Attribute Value
Type XenRef[VDI]
Required False
Position Named
Accepts pipeline input False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases wi

-XenAction

Selects which action to use.
Attribute Value
Type XenPoolUpdateAction
Required True
Position Named
Accepts pipeline input False
Accepted values Introduce, Precheck, Apply, PoolApply, PoolClean

-XenHost

The host to run the prechecks on. Accepted when -XenAction is Precheck, Apply.
Attribute Value
Type XenRef[Host]
Required False
Position Named
Accepts pipeline input False

Inputs

  • Pool_update
  • XenRef[Pool_update]
  • guid
  • string

Outputs

  • System.Object

Examples

Example 1: Run the Introduce operation

PS> Get-XenPoolUpdate -Name "Demo PoolUpdate" | Invoke-XenPoolUpdate -XenAction Introduce -PassThru
Invokes the Introduce operation on a PoolUpdate. -PassThru writes the result to the pipeline.

Example 2: Run the Introduce operation by name

PS> Invoke-XenPoolUpdate -XenAction Introduce -Name "Demo PoolUpdate" -PassThru
Invokes the Introduce operation on a PoolUpdate. -Name matches on name\_label, which is not unique, so every match is operated on. -PassThru writes the result to the pipeline.

Example 3: Run Introduce asynchronously

PS> Invoke-XenPoolUpdate -Name "Demo PoolUpdate" -XenAction Introduce -Async -PassThru | Wait-XenTask -ShowProgress
Runs the same operation asynchronously and follows the task it returns.