Tests/Integration/MSFT_ServiceResource_AllExceptCredential.config.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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
param
(
    [Parameter(Mandatory = $true)]
    [System.String]
    $ConfigurationName
)

Configuration $ConfigurationName
{
    param
    (
        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [System.String]
        $Name,

        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [System.String]
        $Path,

        [ValidateSet('Present', 'Absent')]
        [ValidateNotNullOrEmpty()]
        [System.String]
        $Ensure = 'Present',

        [Parameter()]
        [ValidateNotNullOrEmpty()]
        [System.String]
        $DisplayName = "$Name DisplayName",

        [Parameter()]
        [System.String]
        $Description = 'TestDescription',

        [Parameter()]
        [System.String[]]
        [AllowEmptyCollection()]
        $Dependencies = @(),

        [Parameter()]
        [ValidateSet('LocalSystem', 'LocalService', 'NetworkService')]
        [System.String]
        $BuiltInAccount = 'LocalSystem',

        [Parameter()]
        [System.Boolean]
        $DesktopInteract = $false,

        [Parameter()]
        [ValidateSet('Automatic', 'Manual', 'Disabled')]
        [System.String]
        $StartupType = 'Automatic',

        [Parameter()]
        [ValidateSet('Running', 'Stopped', 'Ignore')]
        [System.String]
        $State = 'Running',

        [Parameter()]
        [System.UInt32]
        $StartupTimeout = 30000,

        [Parameter()]
        [System.UInt32]
        $TerminateTimeout = 30000
    )

    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost
    {
        Service Service1
        {
            Name             = $Name
            Ensure           = $Ensure
            Path             = $Path
            StartupType      = $StartupType
            BuiltInAccount   = $BuiltInAccount
            DesktopInteract  = $DesktopInteract
            State            = $State
            DisplayName      = $DisplayName
            Description      = $Description
            Dependencies     = $Dependencies
            StartupTimeout   = $StartupTimeout
            TerminateTimeout = $TerminateTimeout
        }
    }
}