Configuration Manager cmdlet library changes for version 2111
Applies to: Configuration Manager (current branch)
These release notes summarize changes to the Configuration Manager cmdlet library in version 2111.
Note
Configuration Manager current branch version 2107 is the baseline for these changes. For more information, see Configuration Manager cmdlet library changes for version 2107.
Module changes
When you install the Configuration Manager console, the path to the ConfigurationManager PowerShell module is now added to the system environment variable, PSModulePath. For example, by default, this path is C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin
.
With this change, it's easier to import this module with the following command: Import-Module ConfigurationManager
For more information, see about_PSModulePath.
New cmdlets
Get-CMDeploymentTypeRequirement: Use this cmdlet to get the requirement rules for the specified deployment type. You can use the returned object to add the same rules to another deployment type.
Remove-CMSoftwareUpdateFromPackage: Use this cmdlet to remove the specified software update from a package.
Set-CMApplicationSupersedence: Use this cmdlet to set deployment type supersedence for the specified application.
Orchestration groups
For more information about this feature, see Orchestration groups in Configuration Manager.
Get-CMOrchestrationGroup: Use this cmdlet to get an orchestration group object by name or ID. You can use this object to start, remove, or configure the orchestration group.
Invoke-CMOrchestrationGroup: Use this cmdlet to start orchestration.
New-CMOrchestrationGroup: Use this cmdlet to create a new orchestration group.
Remove-CMOrchestrationGroup: Use this cmdlet to remove the specified orchestration group.
Set-CMOrchestrationGroup: Use this cmdlet to configure an orchestration group.
Role-based administration
For more information on security roles and permissions, see Fundamentals of role-based administration in Configuration Manager.
Get-CMSecurityRolePermission: Use this cmdlet to get the permissions for the specified security role.
Set-CMSecurityRolePermission: Use this cmdlet to configure a security role with specific permissions.
Folder management
For more information on folders, see How to use the Configuration Manager console.
Get-CMFolder: Use this cmdlet to get all customized folders or folders from the specified parent path.
New-CMFolder: Use this cmdlet to create a new folder under the specified parent folder path.
Remove-CMFolder: Use this cmdlet to remove the specified folder.
Set-CMFolder: Use this cmdlet to configure the specified folder. For example, rename it or move it to another folder.
Deprecated and removed cmdlets
The following cmdlets are deprecated and may be removed in a future release:
Deprecated cmdlet | Replacement |
---|---|
Add-CMDeploymentTypeSupersedence | Set-CMApplicationSupersedence |
Remove-CMDeploymentTypeSupersedence | Set-CMApplicationSupersedence |
Set-CMDeploymentTypeSupersedence | Set-CMApplicationSupersedence |
The following cmdlets are no longer available because the underlying feature is no longer supported:
- Get-CMTSStepConvertDisk
- New-CMTSStepConvertDisk
- Remove-CMTSStepConvertDisk
- Set-CMTSStepConvertDisk
Cmdlet changes
The following changes have been made to existing cmdlets in this version. Changes may be new functionality or bug fixes. Some changes may be breaking. If you use one of the cmdlets or feature areas listed in this section, carefully review the changes to understand how they may affect your use.
Add-CMDeviceCollectionDirectMembershipRule
For more information, see Add-CMDeviceCollectionDirectMembershipRule.
Bugs that were fixed
Fixed an issue when adding a rule by resource object.
Add-CMDistributionPoint
Bugs that were fixed
You can't specify the central administration site (CAS) for the SiteCode parameter, which doesn't support any client-facing site system roles.
Get-CMClientSetting
For more information, see Get-CMClientSetting.
Non-breaking changes
Added support to return the value for the Disable Deadline Randomization setting in the Computer Agent group.
Get-CMPersistentUserSettingsGroup
For more information, see Get-CMPersistentUserSettingsGroup.
Bugs that were fixed
Fixed an issue with the Name parameter to filter on setting groups.
Get-CMUserDeviceAffinity
For more information, see Get-CMUserDeviceAffinity.
Non-breaking changes
Add parameter ShowApprovedOnly to filter out non-approved affinities.
New-CMBoundary
For more information, see New-CMBoundary.
Non-breaking changes
Added new parameter ValueStartsWith to support improvements to VPN boundary types.
New-CMTSPartitionSetting
For more information, see New-CMTSPartitionSetting.
Non-breaking changes
Set default value for AssignVolumeLetter.
New-CMTSStepApplyWindowsSetting
For more information, see New-CMTSStepApplyWindowsSetting.
Breaking changes
Removed the following unsupported parameters:
- MaximumConnection
- ServerLicensing
New-CMTSStepPrestartCheck
For more information, see New-CMTSStepPrestartCheck.
Non-breaking changes
Added new parameters for TPM existence check:
- CheckTpmEnabled
- CheckTpmActivated
New-CMWdacSetting
For more information, see New-CMWdacSetting.
Non-breaking changes
Added support for new platform rules for Windows 10 ARM64 and Windows 10 multi-session.
Remove-CMPersistentUserSettingsGroup
For more information, see Remove-CMPersistentUserSettingsGroup.
Bugs that were fixed
Fixed a query issue when remove settings group by name.
Set-CMBoundary
For more information, see Set-CMBoundary.
Non-breaking changes
Added new parameter ValueStartsWith to support improvements to VPN boundary types.
Set-CMDeviceVariable
For more information, see Set-CMDeviceVariable.
Non-breaking changes
The parameter VariableName is now case-insensitive.
Set-CMDistributionPoint
For more information, see Set-CMDistributionPoint.
Non-breaking changes
Added new parameter EnableMaintenanceMode to support to manage maintenance mode.
Set-CMSoftwareUpdatePoint
For more information, see Set-CMSoftwareUpdatePoint.
Bugs that were fixed
Fixed an issue with regular expression processing when trying to clear the WSUS access account from a software update point.
Set-CMSoftwareUpdatePointComponent
For more information, see Set-CMSoftwareUpdatePointComponent.
Breaking changes
Removed the deprecated parameter EnableSynchronization from this cmdlet. To set the synchronization schedule, use the Schedule parameter.
For example, to disable the synchronization schedule:
Set-CMSoftwareUpdatePointComponent -Name "Contoso-SiteSysSrv.Western.Contoso.com" -Schedule $null
Set-CMTSStepApplyWindowsSetting
For more information, see Set-CMTSStepApplyWindowsSetting.
Breaking changes
Removed the following unsupported parameters:
- MaximumConnection
- ServerLicensing
Set-CMTSStepPrestartCheck
For more information, see Set-CMTSStepPrestartCheck.
Non-breaking changes
Added new parameters for TPM existence check:
- CheckTpmEnabled
- CheckTpmActivated
Changes to multiple cmdlets
The following changes were made across multiple cmdlets of a similar type.
Import and export verbs
This change applies to all cmdlets with import
and export
verbs. For example, Import-CMAADClientApplication and Export-CMApplication.
Non-breaking changes
To allow for consistent parameter use across these cmdlets, they all have aliases for the parameter to specify the import path: FilePath
, FileName
, ImportFilePath
, Path
Configure application deployment types
This change applies to all cmdlets with set
verbs to configure application deployment types. These cmdlet names use the pattern Set-CM*DeploymentType
, where *
is the application technology. For example, Set-CMMsiDeploymentType.
Bugs that were fixed
Fixed a requirement rule name issue with these cmdlets.
Create requirement rules
This change applies to all cmdlets with the name pattern New-CMRequirementRule*
, where *
is the type of rule. For example, New-CMRequirementRuleExistential.
Bugs that were fixed
Fixed a requirement rule name issue with these cmdlets.
How to provide feedback or report issues
Many of the fixes and improvements described in this article are a result of your feedback.
To send feedback, use the Configuration Manager console. For more information, see Feedback for PowerShell.