New-CMRequirementRuleCMSiteValue

Create a Configuration Manager site requirement rule for an application deployment type.

Syntax

New-CMRequirementRuleCMSiteValue
   -Site <String[]>
   -RuleOperator <RuleExpressionOperator>
   [-InputObject] <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Description

Use this cmdlet to create a Configuration Manager site requirement rule for an application deployment type.

After you use this cmdlet, then use one of the Add- or Set- cmdlets for deployment types. Pass this requirement rule object to either the AddRequirement or RemoveRequirement parameters.

For more information, see Deployment type Requirements and Create global conditions.

Note

Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>. For more information, see getting started.

Examples

Example 1: Add a requirement rule for Configuration Manager sites

This example first uses the Get-CMGlobalCondition cmdlet to get the default Configuration Manager Site global condition. It then defines a string array of two Configuration Manager sites. Next it creates the requirement rule object. Finally it passes that rule object to the Set-CMScriptDeploymentType cmdlet to add the requirement.

$gc = Get-CMGlobalCondition -Name "Configuration Manager site"
$sites = @('XYZ', 'ABC')
$rule = New-CMRequirementRuleActiveDirectorySiteValue -InputObject $gc -RuleOperator OneOf -Site $sites

Set-CMScriptDeploymentType -ApplicationName "Central App" -DeploymentTypeName "Install" -AddRequirement $rule

Parameters

-DisableWildcardHandling

This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.

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

This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.

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

Specify a global condition object to use as the basis for this requirement rule. To get this object, use the Get-CMGlobalCondition cmdlet.

In most instances, you'll use the default Configuration Manager site global condition, for example: Get-CMGlobalCondition -Name "Configuration Manager site".

Type:IResultObject
Aliases:GlobalCondition
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-RuleOperator

Specify the operator to compare the device's setting with the expected value.

Type:RuleExpressionOperator
Accepted values:OneOf, NoneOf
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Site

Specify a string array of Configuration Manager site codes.

Type:String[]
Aliases:Sites, SiteCode, SiteCodes
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Inputs

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Outputs

System.Object