This repository was archived by the owner on Jun 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 55
Expand file tree
/
Copy pathSample_Script.ps1
More file actions
62 lines (55 loc) · 1.62 KB
/
Sample_Script.ps1
File metadata and controls
62 lines (55 loc) · 1.62 KB
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
<#
.SYNOPSIS
Creates a file at the given file path with the specified content through the Script resource.
.PARAMETER FilePath
The path at which to create the file.
.PARAMETER FileContent
The content to set for the new file.
#>
Configuration ScriptExample {
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true)]
[ValidateNotNullOrEmpty()]
[String]
$FilePath,
[Parameter(Mandatory = $true)]
[ValidateNotNullOrEmpty()]
[String]
$FileContent
)
Import-DscResource -ModuleName 'PSDscResources'
Node localhost
{
Script ScriptExample
{
SetScript = {
$streamWriter = New-Object -TypeName 'System.IO.StreamWriter' -ArgumentList @( $using:FilePath )
$streamWriter.WriteLine($using:FileContent)
$streamWriter.Close()
}
TestScript = {
if (Test-Path -Path $using:FilePath)
{
$fileContent = Get-Content -Path $using:filePath -Raw
return $fileContent -eq $using:FileContent
}
else
{
return $false
}
}
GetScript = {
$fileContent = $null
if (Test-Path -Path $using:FilePath)
{
$fileContent = Get-Content -Path $using:filePath -Raw
}
return @{
Result = Get-Content -Path $fileContent
}
}
}
}
}