Citrix Virtual Apps and Desktops SDK

Schedule-ProvVMUpdate

(DEPRECATED) Schedules a property update on provisioned virtual machines.

Syntax

Schedule-ProvVMUpdate
        [-StartTimeInUTC <String>]
        [-StartsNow]
        [-DurationInMinutes <Int32>]
        -ProvisioningSchemeName <String>
        [-LoggingId <Guid>]
        [<CitrixCommonParameters>]
        [<CommonParameters>]
<!--NeedCopy-->
Schedule-ProvVMUpdate
        [-StartTimeInUTC <String>]
        [-StartsNow]
        [-DurationInMinutes <Int32>]
        -ProvisioningSchemeName <String>
        -VMName <String[]>
        [-LoggingId <Guid>]
        [<CitrixCommonParameters>]
        [<CommonParameters>]
<!--NeedCopy-->
Schedule-ProvVMUpdate
        [-StartTimeInUTC <String>]
        [-StartsNow]
        [-DurationInMinutes <Int32>]
        -ProvisioningSchemeUid <Guid>
        [-LoggingId <Guid>]
        [<CitrixCommonParameters>]
        [<CommonParameters>]
<!--NeedCopy-->
Schedule-ProvVMUpdate
        [-StartTimeInUTC <String>]
        [-StartsNow]
        [-DurationInMinutes <Int32>]
        -ProvisioningSchemeUid <Guid>
        -VMName <String[]>
        [-LoggingId <Guid>]
        [<CitrixCommonParameters>]
        [<CommonParameters>]
<!--NeedCopy-->

Description

This cmdlet has been deprecated and replaced by [Set-ProvVMUpdateTimeWindow](/en-us/citrix-virtual-apps-desktops-sdk/2402/MachineCreation/Set-ProvVMUpdateTimeWindow.html). [Set-ProvVMUpdateTimeWindow](/en-us/citrix-virtual-apps-desktops-sdk/2402/MachineCreation/Set-ProvVMUpdateTimeWindow.html) is the new name for Schedule-ProvVMUpdate and provides all the same functionality, please use it going foward in place of Schedule-ProvVMUpdate.

Provides the ability to synchronize the properties of existing virtual machines with any changes occurred on the provisioning scheme.

This cmdlet defines a time window where a provisioning scheme update will take place against either specific machines

in a catalog or an entire catalog. The update will take place when the machine is next booted within the time window.

On each VM an update is scheduled, ProvisioningSchemeUpdateRequested defines the start of the time window and

ProvisioningSchemeUpdateUntil defines the end of the time window. These fields will be cleared upon a successful

provisioning scheme update or if the time window has expired when the machine has booted

Examples

Parameters

-ProvisioningSchemeName

The name of the provisioning scheme

Type: String
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False
Type: String
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False

-VMName

List of VM names to schedule an update for. If not specified, all VMs in the machine catalog associated with the specified provisioning scheme will be scheduled for a property update

Type: String[]
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False

-ProvisioningSchemeUid

The unique identifier of the provisioning scheme

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

-StartTimeInUTC

The start time in UTC format of the time window the schedule is active for. Mutually exclusive with StartsNow switch. Must be no more than 5 seconds in the past. The string will be converted into a DateTime using parsing rules defined by the DateTime.Parse method, which allows for a timezone offset to specify time in any timezone. If no timezone offset is specified, UTC will be assumed. See the example usages of Schedule-ProvVMupdate or this link for more details https://docs.microsoft.com/en-us/dotnet/api/system.datetime.parse?view=net-6.0#the-string-to-parse

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

-StartsNow

Whether this schedule should start right away. Mutually exclusive with specific StartTimeInUTC. Implied to be set if StartTimeInUTC is not specified

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

-DurationInMinutes

The duration in minutes of the time window the schedule is active for. If less than 0, indicates the schedule has no end time

Type: Int32
Position: Named
Default value: 120 minutes
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

Citrix.MachineCreation.Sdk.ProvisionedVirtualMachine

You can pipe an object containing parameters called ‘VMId’ and ‘ProvisioningSchemeName’ to Schedule-ProvVMUpdate.

Outputs

None

By default, this cmdlet returns no output.

Notes

Running Set-ProvScheme to update provisioning scheme properties will only affect future provisioned machines. To schedule existing VMs in a catalog to be brought up to date upon the next power on, use this cmdlet to schedule certain or all VMs created from the provisioning scheme associated with the catalog to be updated.

Schedule-ProvVMUpdate