forked from dsccommunity/xPSDesiredStateConfiguration
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathxWindowsFeature_AddFeatureUsingCredentialConfig.ps1
76 lines (64 loc) · 2.28 KB
/
xWindowsFeature_AddFeatureUsingCredentialConfig.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<#PSScriptInfo
.VERSION 1.0.1
.GUID 725562ba-fa61-4976-be99-0cf3f04ffc6e
.AUTHOR Microsoft Corporation
.COMPANYNAME Microsoft Corporation
.COPYRIGHT
.TAGS DSCConfiguration
.LICENSEURI https://github.com/dsccommunity/xPSDesiredStateConfiguration/blob/main/LICENSE
.PROJECTURI https://github.com/dsccommunity/xPSDesiredStateConfiguration
.ICONURI
.EXTERNALMODULEDEPENDENCIES
.REQUIREDSCRIPTS
.EXTERNALSCRIPTDEPENDENCIES
.RELEASENOTES First version.
.PRIVATEDATA 2016-Datacenter,2016-Datacenter-Server-Core
#>
#Requires -module 'xPSDesiredStateConfiguration'
<#
.SYNOPSIS
Configuration that adds a role or feature, using the given credentials.
.DESCRIPTION
Configuration that adds a role or feature, using the given credentials.
.PARAMETER Name
Name of the role or feature that you want to ensure is added.
This is the same as the Name parameter from the Get-WindowsFeature
cmdlet, and not the display name of the role or feature.
.PARAMETER Credential
The credentials to use to add or remove the role or feature.
.PARAMETER IncludeAllSubFeature
Set this parameter to $true to ensure the state of all required
sub-features with the state of the feature you specify with the Name
parameter. The default value is $false.
.EXAMPLE
xWindowsFeature_AddFeatureUsingCredentialConfig -Name 'Telnet-Client' -IncludeAllSubFeature $false -Credential (Get-Credential)
Compiles a configuration that adds the feature Telnet-Client.
#>
Configuration xWindowsFeature_AddFeatureUsingCredentialConfig
{
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter()]
[System.Boolean]
$IncludeAllSubFeature,
[Parameter(Mandatory = $true)]
[System.Management.Automation.PSCredential]
[System.Management.Automation.Credential()]
$Credential
)
Import-DscResource -ModuleName 'xPSDesiredStateConfiguration'
Node localhost
{
xWindowsFeature 'AddFeatureUsingCredential'
{
Name = $Name
Ensure = 'Present'
IncludeAllSubFeature = $IncludeAllSubFeature
Credential = $Credential
}
}
}