-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathps-createdscconfig.ps1
70 lines (61 loc) · 2.13 KB
/
ps-createdscconfig.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
Configuration Create_xDscWebService
{
param
(
[string[]]$NodeName = 'localhost',
[ValidateNotNullOrEmpty()]
[string] $certificateThumbPrint
)
Import-DSCResource -Module xPSDesiredStateConfiguration
Node $NodeName
{
WindowsFeature WebServer
{
Ensure = "Present" # To uninstall the role, set Ensure to "Absent"
Name = "Web-Server"
}
WindowsFeature IISMgmtTools
{
Ensure = "Present"
Name = "Web-Mgmt-Tools"
}
WindowsFeature IISMgmtCon
{
Ensure = "Present"
Name = "Web-Mgmt-Console"
}
WindowsFeature IISScriptingTools
{
Ensure = "Present"
Name = "Web-Scripting-Tools"
}
WindowsFeature DSCServiceFeature
{
Ensure = "Present"
Name = "DSC-Service"
}
xDscWebService PSDSCPullServer
{
Ensure = "Present"
EndpointName = "DSCPull"
Port = 80
PhysicalPath = "$env:SystemDrive\inetpub\wwwroot\DSCPull"
CertificateThumbPrint = "AllowUnencryptedTraffic"
ModulePath = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Modules"
ConfigurationPath = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Configuration"
State = "Started"
DependsOn = "[WindowsFeature]DSCServiceFeature"
}
xDscWebService PSDSCComplianceServer
{
Ensure = "Present"
EndpointName = "DSCCompliance"
Port = 8080
PhysicalPath = "$env:SystemDrive\inetpub\wwwroot\DSCCompliance"
CertificateThumbPrint = "AllowUnencryptedTraffic"
State = "Started"
IsComplianceServer = $true
DependsOn = @("[WindowsFeature]DSCServiceFeature","[xDSCWebService]PSDSCPullServer")
}
}
}