Start-CMTaskSequenceDeployment
Start-CMTaskSequenceDeployment
Starts a task sequence deployment in Configuration Manager.
Syntax
Parameter Set: SearchPackageByIdMandatory
Start-CMTaskSequenceDeployment -CollectionName <String> -TaskSequencePackageId <String[]> [-AlertDay <DateTime> ] [-AlertTime <DateTime> ] [-AllowFallback <Boolean> ] [-AllowSharedContent <Boolean> ] [-AllowUsersRunIndependently <Boolean> ] [-Comment <String> ] [-CreateAlertBaseOnPercentFailure <Boolean> ] [-CreateAlertBaseOnPercentSuccess <Boolean> ] [-DeploymentAvailableDay <DateTime> ] [-DeploymentAvailableTime <DateTime> ] [-DeploymentExpireDay <DateTime> ] [-DeploymentExpireTime <DateTime> ] [-DeploymentOption <DeploymentOptionType> {DownloadAllContentLocallyBeforeStartingTaskSequence | DownloadContentLocallyWhenNeededByRunningTaskSequence} ] [-DeployPurpose <DeployPurposeType> {Available | Required} ] [-InternetOption <Boolean> ] [-MakeAvailableTo <MakeAvailableToType> ] [-PercentFailure <Int32> ] [-PercentSuccess <Int32> ] [-PersistOnWriteFilterDevice <Boolean> ] [-RerunBehavior <RerunBehaviorType> {AlwaysRerunProgram | NeverRerunDeployedProgram | RerunIfFailedPreviousAttempt | RerunIfSucceededOnPreviousAttempt} ] [-Schedule <IResultObject[]> ] [-ScheduleEvent {AsSoonAsPossible | LogOff | LogOn}[] ] [-SendWakeUpPacket <Boolean> ] [-ShowTaskSequenceProgress <Boolean> ] [-SoftwareInstallation <Boolean> ] [-SystemRestart <Boolean> ] [-UseMeteredNetwork <Boolean> ] [-UseUtcForAvailableSchedule <Boolean> ] [-UseUtcForExpireSchedule <Boolean> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: SearchByValueMandatory
Start-CMTaskSequenceDeployment -CollectionName <String> -InputObject <IResultObject> [-AlertDay <DateTime> ] [-AlertTime <DateTime> ] [-AllowFallback <Boolean> ] [-AllowSharedContent <Boolean> ] [-AllowUsersRunIndependently <Boolean> ] [-Comment <String> ] [-CreateAlertBaseOnPercentFailure <Boolean> ] [-CreateAlertBaseOnPercentSuccess <Boolean> ] [-DeploymentAvailableDay <DateTime> ] [-DeploymentAvailableTime <DateTime> ] [-DeploymentExpireDay <DateTime> ] [-DeploymentExpireTime <DateTime> ] [-DeploymentOption <DeploymentOptionType> {DownloadAllContentLocallyBeforeStartingTaskSequence | DownloadContentLocallyWhenNeededByRunningTaskSequence} ] [-DeployPurpose <DeployPurposeType> {Available | Required} ] [-InternetOption <Boolean> ] [-MakeAvailableTo <MakeAvailableToType> ] [-PercentFailure <Int32> ] [-PercentSuccess <Int32> ] [-PersistOnWriteFilterDevice <Boolean> ] [-RerunBehavior <RerunBehaviorType> {AlwaysRerunProgram | NeverRerunDeployedProgram | RerunIfFailedPreviousAttempt | RerunIfSucceededOnPreviousAttempt} ] [-Schedule <IResultObject[]> ] [-ScheduleEvent {AsSoonAsPossible | LogOff | LogOn}[] ] [-SendWakeUpPacket <Boolean> ] [-ShowTaskSequenceProgress <Boolean> ] [-SoftwareInstallation <Boolean> ] [-SystemRestart <Boolean> ] [-UseMeteredNetwork <Boolean> ] [-UseUtcForAvailableSchedule <Boolean> ] [-UseUtcForExpireSchedule <Boolean> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Detailed Description
The Start-CMTaskSequenceDeployment cmdlet starts a task sequence deployment. A task sequence deployment assigns a task sequence to a collection of computers.
Parameters
-AlertDay<DateTime>
Specifies a day, in MM/DD/YYYY format, to notify clients of a new deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-AlertTime<DateTime>
Specifies a time, in HH:MM format, to notify clients of a new deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-AllowFallback<Boolean>
Indicates whether to allow a fallback status point for clients.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-AllowSharedContent<Boolean>
Indicates whether to allow shared content, such as a shared network folder.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-AllowUsersRunIndependently<Boolean>
Indicates whether to allow users to independently run the program, regardless of its assignment status.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-CollectionName<String>
Specifies a name of a collection designated to receive a task sequence deployment. A collection is a group of client computers.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Comment<String>
Specifies a comment for the task sequence deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-CreateAlertBaseOnPercentFailure<Boolean>
Indicates whether to create an alert, depending on the percentage of an installation that fails. If you specify a percent failure for installations, Configuration Manager raises an alert in the console when deployment fails on that percentage of installations. Use this parameter in conjunction with the PercentFailure parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-CreateAlertBaseOnPercentSuccess<Boolean>
Indicates whether to create an alert, depending on the percentage of an installation that succeeds. If you specify a percent success for installations, Configuration Manager raises an alert in the console when the deployment succeeds on that percentage of installations. Use this parameter in conjunction with the PercentSuccess parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeploymentAvailableDay<DateTime>
Specifies a day, in MM/DD/YYYY format, when a deployment becomes available to clients. By default, the deployment becomes available immediately.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeploymentAvailableTime<DateTime>
Specifies a time, in HH:MM format, when a deployment becomes available to clients. By default, the deployment becomes available immediately.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeploymentExpireDay<DateTime>
Specifies a day, in MM/DD/YYYY format, when a deployment expires. By default, a deployment never expires. To have a deployment expire on a certain day, set this parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeploymentExpireTime<DateTime>
Specifies a time, in HH:MM format, when the deployment expires. By default, a deployment never expires. To have a deployment expire at a certain time, set this parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeploymentOption<DeploymentOptionType>
Specifies if clients download all content before starting the task sequence, or download content as needed by the running task sequence. By default, clients download content as needed. The acceptable values for this parameter are:
-- DownloadAllContentLocallyBeforeStartingTaskSequence
-- DownloadContentLocallyWhenNeededByRunningTaskSequence
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DeployPurpose<DeployPurposeType>
Specifies a task sequence as either required or available. A required task sequence installation is mandatory. The acceptable values for this parameter are:
-- Available
-- Required
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-InputObject<IResultObject>
Specifies a task sequence deployment object.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-InternetOption<Boolean>
Indicates whether the task sequence runs on clients connecting over the Internet.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-MakeAvailableTo<MakeAvailableToType>
Specifies the collections that receive this deployment. The acceptable values for this parameter are:
-- Clients
-- ClientsMediaAndPxe
-- MediaAndPxe
-- MediaAndPxeHidden
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-PercentFailure<Int32>
Specifies a percentage for failed task sequence deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-PercentSuccess<Int32>
Specifies a percentage for successful task sequence deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-PersistOnWriteFilterDevice<Boolean>
Indicates whether to install a task sequence on the temporary overlay and commit changes later, or commit the changes at an installation deadline or a maintenance window.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-RerunBehavior<RerunBehaviorType>
Specifies that a task sequence will be rerun on a computer if it has previously been run before the scheduled mandatory time. By default, the task sequence is always rerun. The acceptable values for this parameter are:
-- AlwaysRerunProgram
-- NeverRerunDeployedProgram
-- RerunIfFailedPreviousAttempt
-- RerunIfSucceededOnPreviousAttempt
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Schedule<IResultObject[]>
Specifies an array of schedule objects.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ScheduleEvent<ScheduleEventType[]>
Specifies an array of events that determine when the task sequence deployment runs. The acceptable values for this parameter are:
-- AsSoonAsPossible
-- LogOff
-- LogOn
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-SendWakeUpPacket<Boolean>
Indicates whether to send a wake up packet to computers before the deployment begins. If this value is $True, Configuration Manager wakes a computer from sleep. If this value is $False, it does not wake computers from sleep. For computers to wake, you must first configure Wake On LAN. The Purpose parameter must be set to Required.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ShowTaskSequenceProgress<Boolean>
Indicates whether to show a process dialog for a task sequence.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-SoftwareInstallation<Boolean>
Indicates whether to allow the application to install, even if the installation occurs outside of a maintenance window.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-SystemRestart<Boolean>
Indicates whether to allow an advertised program to restart the system, even if the restart occurs outside of a maintenance window.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-TaskSequencePackageId<String[]>
Specifies an array of IDs for a task sequence package.
Aliases |
PackageId |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-UseMeteredNetwork<Boolean>
Indicates whether to allow clients to connect to a metered network to download a program.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-UseUtcForAvailableSchedule<Boolean>
Indicates whether client computers use UTC time to determine the availability of a program. UTC time makes the task sequence available at the same time for all computers.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-UseUtcForExpireSchedule<Boolean>
Indicates whether client computers use UTC time to determine the expiration of a program. UTC time makes the task sequence available at the same time for all computers.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Confirm
Prompts you for confirmation before running the cmdlet.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
Outputs
The output type is the type of the objects that the cmdlet emits.
Examples
Example 1: Start a task sequence deployment
This command starts a task sequence deployment by using the name of the task sequence deployment and the name of a collection.
PS C:\> Start-CMTaskSequenceDeployment -Name "Task Sequence 1333" -CollectionName "All Systems"
Example 2: Start a task sequence deployment for devices
This command starts a task sequence deployment for mobile devices. The command does not allow the use of the PersistOnWriteFilterDevice parameter.
PS C:\> Start-CMTaskSequenceDeployment -Name "Task Sequence 1333" -CollectionName "All Mobile Devices" -Comment "Task sequence test" -DeployPurpose Required -SendWakeUpPacket $True -UseMeteredNetwork $True -ScheduleEvent AsSoonAsPossible -RerunBehavior NeverRerunDeployedProgram -AllowUsersRunIndependently $True -ShowTaskSequenceProgress $False -SoftwareInstallation $True -SystemRestart $True -PersistOnWriteFilterDevice $False -AllowFallback $True -CreatAlertBaseOnPercentSuccess $True -CreatAlertBaseOnPercentFailure $True -DeploymentOption DownloadAllContentLocallyBeforeStartingTaskSequence -AllowSharedContent $True -InternetOption $True