6 # The Get-TargetResource cmdlet.
8 function Get-TargetResource
12 [parameter(Mandatory)]
13 [ValidateNotNullOrEmpty()]
14 [string] $ResourceName,
16 [parameter(Mandatory)]
17 [ValidateNotNullOrEmpty()]
20 [parameter(Mandatory)]
23 [ValidateRange(1,[Uint64]::MaxValue)]
24 [Uint64] $RetryIntervalSec = 1,
26 [Uint32] $RetryCount = 0,
28 [Uint32] $ThrottleLimit = 32 #Powershell New-CimSession default throttle value
31 Import-Module $PSScriptRoot\..\..\PSDSCxMachine.psm1 -Verbose:$false
33 $result = PSDSCxMachine\Get-_InternalPSDscXMachineTR `
34 -RemoteResourceId $ResourceName `
35 -RemoteMachine $NodeName `
36 -MinimalNumberOfMachineInState $NodeCount `
37 -RetryIntervalSec $RetryIntervalSec `
38 -RetryCount $RetryCount `
39 -ThrottleLimit $ThrottleLimit
40 $result.NodeCount = $NodeCount
46 # The Set-TargetResource cmdlet.
48 function Set-TargetResource
52 [parameter(Mandatory)]
53 [ValidateNotNullOrEmpty()]
54 [string] $ResourceName,
56 [parameter(Mandatory)]
57 [ValidateNotNullOrEmpty()]
60 [parameter(Mandatory)]
63 [ValidateRange(1,[Uint64]::MaxValue)]
64 [Uint64] $RetryIntervalSec = 1,
66 [Uint32] $RetryCount = 0,
68 [Uint32] $ThrottleLimit = 32 #Powershell New-CimSession default throttle value
71 Import-Module $PSScriptRoot\..\..\PSDSCxMachine.psm1 -Verbose:$false
73 PSDSCxMachine\Set-_InternalPSDscXMachineTR `
74 -RemoteResourceId $ResourceName `
75 -RemoteMachine $NodeName `
76 -MinimalNumberOfMachineInState $NodeCount `
77 -RetryIntervalSec $RetryIntervalSec `
78 -RetryCount $RetryCount `
79 -ThrottleLimit $ThrottleLimit `
80 -Verbose:$($PSBoundParameters["Verbose"] -eq $true)
87 function Test-TargetResource
91 [parameter(Mandatory)]
92 [ValidateNotNullOrEmpty()]
93 [string] $ResourceName,
95 [parameter(Mandatory)]
96 [ValidateNotNullOrEmpty()]
99 [parameter(Mandatory)]
102 [ValidateRange(1,[Uint64]::MaxValue)]
103 [Uint64] $RetryIntervalSec = 1,
105 [Uint32] $RetryCount = 0,
107 [Uint32] $ThrottleLimit = 32 #Powershell New-CimSession default throttle value
110 if ($NodeCount -gt $NodeName.Count)
112 throw "Invalid input NodeCount!"
115 Import-Module $PSScriptRoot\..\..\PSDSCxMachine.psm1 -Verbose:$false
117 return PSDSCxMachine\Test-_InternalPSDscXMachineTR `
118 -RemoteResourceId $ResourceName `
119 -RemoteMachine $NodeName `
120 -MinimalNumberOfMachineInState $NodeCount `
121 -RetryIntervalSec $RetryIntervalSec `
122 -RetryCount $RetryCount `
123 -ThrottleLimit $ThrottleLimit `
124 -Verbose:$($PSBoundParameters["Verbose"] -eq $true)
129 Export-ModuleMember -Function *-TargetResource