Dmitry Nefedov
2 years ago
committed by
GitHub
1 changed files with 47 additions and 0 deletions
@ -0,0 +1,47 @@ |
|||||
|
Write-Verbose -Message Dependencies -Verbose |
||||
|
|
||||
|
# Download PolicyFileEditor |
||||
|
# https://github.com/dlwyatt/PolicyFileEditor |
||||
|
$Parameters = @{ |
||||
|
Uri = "https://api.github.com/repos/dlwyatt/PolicyFileEditor/releases/latest" |
||||
|
UseBasicParsing = $true |
||||
|
} |
||||
|
$LatestPolicyFileEditorVersion = (Invoke-RestMethod @Parameters).tag_name |
||||
|
$Parameters = @{ |
||||
|
Uri = "https://github.com/dlwyatt/PolicyFileEditor/archive/refs/tags/$LatestPolicyFileEditorVersion.zip" |
||||
|
OutFile = "Scripts\$LatestPolicyFileEditorVersion.zip" |
||||
|
UseBasicParsing = $true |
||||
|
Verbose = $true |
||||
|
} |
||||
|
Invoke-WebRequest @Parameters |
||||
|
# Expand zip archive |
||||
|
$Parameters = @{ |
||||
|
Path = "Scripts\$LatestPolicyFileEditorVersion.zip" |
||||
|
DestinationPath = "Scripts" |
||||
|
Force = $true |
||||
|
Verbose = $true |
||||
|
} |
||||
|
Expand-Archive @Parameters |
||||
|
$Path = @( |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\DscResources", |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\en-US", |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\build.psake.ps1", |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\LICENSE", |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\PolicyFileEditor.Tests.ps1", |
||||
|
"Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion\README.md" |
||||
|
) |
||||
|
Remove-Item -Path $Path -Recurse -Force |
||||
|
Rename-Item -Path "Scripts\PolicyFileEditor-$LatestPolicyFileEditorVersion" -NewName "PolicyFileEditor" -Force |
||||
|
# Download Microsoft.Windows.SDK.NET.dll & WinRT.Runtime.dll |
||||
|
$Parameters = @{ |
||||
|
Uri = "https://www.nuget.org/api/v2/package/Microsoft.Windows.SDK.NET.Ref" |
||||
|
OutFile = "Scripts\microsoft.windows.sdk.net.ref.zip" |
||||
|
UseBasicParsing = $true |
||||
|
} |
||||
|
Invoke-RestMethod @Parameters |
||||
|
# Extract Microsoft.Windows.SDK.NET.dll & WinRT.Runtime.dll from archive |
||||
|
Add-Type -Assembly System.IO.Compression.FileSystem |
||||
|
$ZIP = [IO.Compression.ZipFile]::OpenRead("Scripts\microsoft.windows.sdk.net.ref.zip") |
||||
|
$Entries = $ZIP.Entries | Where-Object -FilterScript {($_.FullName -eq "lib/net6.0/Microsoft.Windows.SDK.NET.dll") -or ($_.FullName -eq "lib/net6.0/WinRT.Runtime.dll")} |
||||
|
$Entries | ForEach-Object -Process {[IO.Compression.ZipFileExtensions]::ExtractToFile($_, "Scripts\$($_.Name)", $true)} |
||||
|
$ZIP.Dispose() |
Loading…
Reference in new issue