Pattern: Use of mismatched parameter for DSC
Issue: -
The Get-TargetResource
, Test-TargetResource
and Set-TargetResource
functions of DSC Resource must have the same parameters.
Correct the parameters for the functions in DSC resource.
Example of incorrect code:
function Get-TargetResource
{
[OutputType([Hashtable])]
param
(
[parameter(Mandatory = $true)]
[String]
$Name,
[String]
$TargetResource
)
...
}
function Set-TargetResource
{
param
(
[parameter(Mandatory = $true)]
[String]
$Name
)
...
}
function Test-TargetResource
{
[OutputType([System.Boolean])]
param
(
[parameter(Mandatory = $true)]
[String]
$Name
)
...
}
Example of correct code:
function Get-TargetResource
{
[OutputType([Hashtable])]
param
(
[parameter(Mandatory = $true)]
[String]
$Name,
[String]
$TargetResource
)
...
}
function Set-TargetResource
{
param
(
[parameter(Mandatory = $true)]
[String]
$Name,
[String]
$TargetResource
)
...
}
function Test-TargetResource
{
[OutputType([System.Boolean])]
param
(
[parameter(Mandatory = $true)]
[String]
$Name,
[String]
$TargetResource
)
...
}