Citrix Daas SDK

Confirm-VusMachineComponentSelection

Validate the component selection choices at machine level that can be Included/Excluded during an upgrade using VDA Upgrade Service

Syntax

Confirm-VusMachineComponentSelection
       -MachineUid <Int32[]>
       [-SelectedComponents <ComponentSelection[]>]
       [-ExcludedComponents <ComponentSelection[]>]
       [-Features <String[]>]
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUid <Int32[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUid <Int32[]>
       [-Features <String[]>]
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUid <Int32[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUuid <String[]>
       [-SelectedComponents <ComponentSelection[]>]
       [-ExcludedComponents <ComponentSelection[]>]
       [-Features <String[]>]
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUuid <String[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUuid <String[]>
       [-Features <String[]>]
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineUuid <String[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineName <String[]>
       [-SelectedComponents <ComponentSelection[]>]
       [-ExcludedComponents <ComponentSelection[]>]
       [-Features <String[]>]
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineName <String[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineName <String[]>
       [-Features <String[]>]
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->
Confirm-VusMachineComponentSelection
       -MachineName <String[]>
       [-Features <String[]>]
       -SelectedComponentsXml <String>
       -ExcludedComponentsXml <String>
       [-UpgradeVersion <String>]
       [-LoggingId <Guid>]
       [<CitrixCommonParameters>]
       [<CommonParameters>]
<!--NeedCopy-->

Description

The ConfirmVusMachineComponentSelection cmdlet is used to verify and Validate the component Selections(New Components to be included in Upgrade), Exclusions(Installed Components that should not be upgraded) and features to be used in a Machine Upgrade using the VDA Upgrade Service.

Confirm-VusMachineComponentSelection returns true if the Selection is Valid. If the Selection is invalid it returns false and information as to why the selection is invalid.

Examples

EXAMPLE 1

SCList represents the Selected Components List comprising of ComponentA and ComponentB with Component ID’s indicated below, which were previously not installed on VDAs of Machine but needs to be installed/included during the VDA Upgrade. $EmptyParamList = @()

$ComponentA = [PSCustomObject]@{ ComponentId = [System.guid]::new(‘396394b3-53f0-48e0-8d8c-61dad39e3f17’) Parameters = $EmptyParamList }

$ComponentB = [PSCustomObject]@{ ComponentId = [System.guid]::new(‘3ce3c043-5f32-497c-9099-0e1a6dc06647’) Parameters = $EmptyParamList } $SCList = @($ComponentA, $ComponentB)

$ComponentC Represent a Component installed on all VDAs of a Machine but needs to be excluded during the VDA Upgrade. $ComponentC = [PSCustomObject]@{ ComponentId = [System.guid]::new(‘bddec677-9afb-49f0-9908-59a64f0f54f8’) Parameters = $EmptyParamList }

$FeatureA and FeatureB represents features that needs to be enabled on the VDAs of the Machine during the Upgrade.

$FeatureA = ‘44FF6E61-E3CC-45D0-BE9B-F52B5AB72A08’ $FeatureB = ‘D9167E2C-2088-4301-BFA1-698F934B4E6B’

$FeaturesList = @($FeatureA,$FeatureB)

The above input parameters instruct the cmdlet to check if the ComponentA and ComponentB can be installed/Included for installation and ComponentC can be excluded from installation and FeatureA can be enabled on the VDAs of the Machine during the next Machine Upgrade scheduled from VDA Upgrade Service.

The cmdlet validates with the VUS SDK and responds with

  • true: If the above Selection of Selected Components and Excluded Components and Features is Valid.
  • false: If the above Selection is Invalid with an associated message as to why the selection is invalid.
ConfirmVusMachineComponentSelection -MachineUid 1 -SelectedComponents SCList -ExcludedComponents $ComponentC -Features $FeaturesList
<!--NeedCopy-->

EXAMPLE 2

The XML Schema Definition (xsd) with which the xml string provided for parameters: SelectedComponentsXml and ExcludedComponentsXml is validated is as given below: The ComponentId, ParamterId, FeatureId needed can be obtained from the output of Get-VusComponents.

SCXml represents a ComponentList in XML String format comprising of Component with Component ID(f515acf6-a309-4fe1-8ec6-5023cd0073f4) which has a Paramter with ParameterId(9c365ddc-6e25-48a0-9390-e58c03137d8a) and ParameterValue(testval) that was previously not installed on VDAs of machine but needs to be installed/included during the VDA Upgrade.

$ScXml = “ “

$EcXml represents 2 Components in XML String format with ComponentIDs:(396394b3-53f0-48e0-8d8c-61dad39e3f17, 3ce3c043-5f32-497c-9099-0e1a6dc06647) that is installed on all VDAs of a Machine but needs to be excluded during the VDA Upgrade.

$EcXml = “ “

Features represents the List of strings (feature ID Guids) that needs to be enabled on the VDAs during the Upgrade.

$FeatureA and FeatureB represents features that needs to be enabled on the VDAs during the Upgrade.

$FeatureA = ‘44FF6E61-E3CC-45D0-BE9B-F52B5AB72A08’

$FeatureB = ‘D9167E2C-2088-4301-BFA1-698F934B4E6B’

$FeaturesList = @($FeatureA,$FeatureB)

The above input parameters instruct the cmdlet to check if the components represented by ScXml can be installed/Included for installation and Component represented by EcXml can be excluded from installation and Features represented by FeatureList can be enabled on the VDAs of the during the next Machine Upgrade scheduled from VDA Upgrade Service.

The cmdlet validates with the VUS SDK and responds with

  • true: If the above Selection of Selected Components and Excluded Components and Features is Valid.
  • false: If the above Selection is Invalid with an associated message as to why the selection is invalid.
ConfirmVusMachineComponentSelection -MachineUid 1 -SelectedComponentsXml $ScXml -ExcludedComponentsXml $EcXml -Features $Featurelist
<!--NeedCopy-->

Parameters

-MachineUid

UID of the machine(s) provided by broker service

Type: Int32[]
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-SelectedComponentsXml

List of New Components(in XML format) that are to be included/added in the Upgrade. The XML Scehma definition(xsd) is provided in the examples section.ComponentId, ParameterId can be obtianed from the GetVusMachineComponentsCommand cmdlet.

Type: String
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-ExcludedComponentsXml

List of Installed Components that are to be excluded/omitted in the Upgrade.This parameter accepts XML string. The XML Scehma definition(xsd) is provided in the examples section. ComponentId, ParameterId can be obtianed from the GetVusMachineComponentsCommand cmdlet.

Type: String
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-MachineUuid

UUID of the machine(s) provided by broker service

Type: String[]
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-MachineName

Name of the machine(s) provided by broker service

Type: String[]
Position: Named
Default value: None
Required: True
Accept pipeline input: False
Accept wildcard characters: False

-SelectedComponents

List of New Components that are to be included/added in the Upgrade. This parameter accepts a List of Component PS Object. ComponentId and ParameterId can be obtianed from the GetVusMachineComponentsCommand cmdlet.

Type: ComponentSelection[]
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-ExcludedComponents

List of Installed Components that are to be excluded/omitted in the Upgrade. This parameter accepts a List of Component PS Object. ComponentId and ParameterId can be obtianed from the GetVusMachineComponentsCommand cmdlet.

Type: ComponentSelection[]
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-Features

List of string (FeatureId GUIDs) to be enabled on VDA. FeatureId can be obtained from the GetVusMachineComponentsCommand cmdlet

Type: String[]
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-UpgradeVersion

VDA Version of which the components and parameters are to be fetched

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-LoggingId

Specifies the identifier of the high-level operation this cmdlet call forms a part of. Citrix Studio and Director typically create high-level operations. PowerShell scripts can also wrap a series of cmdlet calls in a high-level operation by way of the Start-LogHighLevelOperation and Stop-LogHighLevelOperation cmdlets.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

CitrixCommonParameters

This cmdlet supports the common Citrix parameters: -AdminAddress, -AdminClientIP, -BearerToken, -TraceParent, -TraceState and -VirtualSiteId. For more information, see about_CitrixCommonParameters.

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

Guid

Citrix.VdaUpdateService.Sdk.ComponentSelection

Component Information for the Selected/Excluded Component

Citrix.VdaUpdateService.Sdk.ComponentParameter

Feature/Parameter information for the selected feature/parameter

Outputs

Citrix.VdaUpdateService.Sdk.ConfirmVusMachineComponentResult

Info/result related to Component Selections and Exclusion

Confirm-VusMachineComponentSelection