mirror of
https://github.com/actions/runner-images.git
synced 2025-12-17 23:28:57 +00:00
[Windows] Add WDK on Windows Server 2022 without VSIX (#5838)
* Add WDK on Windows Server 2022 without VSIX * Fix extension names
This commit is contained in:
committed by
GitHub
parent
45da727c67
commit
02d4539cae
@@ -4,34 +4,41 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
# Requires Windows SDK with the same version number as the WDK
|
# Requires Windows SDK with the same version number as the WDK
|
||||||
if (Test-IsWin19)
|
if (Test-IsWin22) {
|
||||||
{
|
# SDK available through Visual Studio
|
||||||
|
$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2196230"
|
||||||
|
$FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2022\*\WDK.vsix"
|
||||||
|
$VSver = "2022"
|
||||||
|
} elseif (Test-IsWin19) {
|
||||||
$winSdkUrl = "https://go.microsoft.com/fwlink/?linkid=2173743"
|
$winSdkUrl = "https://go.microsoft.com/fwlink/?linkid=2173743"
|
||||||
$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2166289"
|
$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2166289"
|
||||||
$FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix"
|
$FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix"
|
||||||
$VSver = "2019"
|
$VSver = "2019"
|
||||||
}
|
} elseif (Test-IsWin16) {
|
||||||
elseif (Test-IsWin16)
|
|
||||||
{
|
|
||||||
$winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014"
|
$winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014"
|
||||||
$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156"
|
$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156"
|
||||||
$FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix"
|
$FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix"
|
||||||
$VSver = "2017"
|
$VSver = "2017"
|
||||||
}
|
} else {
|
||||||
else
|
throw "Invalid version of Visual Studio is found. Either 2017,2019 or 2022 are required"
|
||||||
{
|
|
||||||
throw "Invalid version of Visual Studio is found. Either 2017 or 2019 are required"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$argumentList = ("/features", "+", "/quiet")
|
$argumentList = ("/features", "+", "/quiet")
|
||||||
|
|
||||||
# `winsdksetup.exe /features + /quiet` installs all features without showing the GUI
|
if ((Test-IsWin16) -or (Test-IsWin19)) {
|
||||||
Install-Binary -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList $argumentList
|
# `winsdksetup.exe /features + /quiet` installs all features without showing the GUI
|
||||||
|
Install-Binary -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList $argumentList
|
||||||
|
}
|
||||||
|
|
||||||
# `wdksetup.exe /features + /quiet` installs all features without showing the GUI
|
# `wdksetup.exe /features + /quiet` installs all features without showing the GUI
|
||||||
Install-Binary -Url $wdkUrl -Name "wdksetup.exe" -ArgumentList $argumentList
|
Install-Binary -Url $wdkUrl -Name "wdksetup.exe" -ArgumentList $argumentList
|
||||||
|
|
||||||
# Need to install the VSIX to get the build targets when running VSBuild
|
# Need to install the VSIX to get the build targets when running VSBuild
|
||||||
Install-VsixExtension -FilePath $FilePath -Name "WDK.vsix" -VSversion $VSver -InstallOnly
|
# Windows 2022 - Skip installation due to a regression
|
||||||
|
# https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
|
||||||
|
if ((Test-IsWin16) -or (Test-IsWin19)) {
|
||||||
|
$FilePath = Resolve-Path -Path $FilePath
|
||||||
|
Install-VsixExtension -FilePath $FilePath -Name "WDK.vsix" -VSversion $VSver -InstallOnly
|
||||||
|
}
|
||||||
|
|
||||||
Invoke-PesterTests -TestFile "WDK"
|
Invoke-PesterTests -TestFile "WDK"
|
||||||
|
|||||||
@@ -54,9 +54,9 @@ function Get-VisualStudioExtensions {
|
|||||||
|
|
||||||
# SDK
|
# SDK
|
||||||
if (Test-IsWin19) {
|
if (Test-IsWin19) {
|
||||||
$sdkPackageVersion = Get-SDKVersion
|
$sdkVersion = Get-SDKVersion
|
||||||
$sdkPackages = @(
|
$sdkPackages = @(
|
||||||
@{Package = 'Windows Software Development Kit Extension'; Version = $sdkPackageVersion}
|
@{Package = 'Windows Software Development Kit'; Version = $sdkVersion}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -68,14 +68,21 @@ function Get-VisualStudioExtensions {
|
|||||||
)
|
)
|
||||||
|
|
||||||
# WDK
|
# WDK
|
||||||
$wdkPackageVersion = Get-VSExtensionVersion -packageName 'Microsoft.Windows.DriverKit'
|
$wdkVersion = Get-WDKVersion
|
||||||
$wdkExtensionVersion = Get-WDKVersion
|
$wdkExtensionVersion = Get-VSExtensionVersion -packageName 'Microsoft.Windows.DriverKit'
|
||||||
$wdkPackages = @(
|
$wdkPackages = @(
|
||||||
@{Package = 'Windows Driver Kit'; Version = $wdkPackageVersion}
|
@{Package = 'Windows Driver Kit'; Version = $wdkVersion}
|
||||||
@{Package = 'Windows Driver Kit Visual Studio Extension'; Version = $wdkExtensionVersion}
|
@{Package = 'Windows Driver Kit Visual Studio Extension'; Version = $wdkExtensionVersion}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Test-IsWin22) {
|
||||||
|
# WDK
|
||||||
|
$wdkVersion = Get-WDKVersion
|
||||||
|
$wdkPackages = @(
|
||||||
|
@{Package = 'Windows Driver Kit'; Version = $wdkVersion}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
$extensions = @(
|
$extensions = @(
|
||||||
$vsixs
|
$vsixs
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
Describe "WDK" -Skip:(Test-IsWin22) {
|
Describe "WDK" {
|
||||||
It "WDK exists" {
|
It "WDK exists" {
|
||||||
$WDKVersion = (Get-CimInstance -ClassName Win32_Product -Filter "Name = 'Windows Driver Kit'").Version
|
$regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*"
|
||||||
$WDKVersion| Should -Not -BeNullOrEmpty
|
$installedApplications = Get-ItemProperty -Path $regKey
|
||||||
|
$WDKVersion = $installedApplications | Where-Object DisplayName -eq 'Windows Driver Kit' | Select-Object -First 1 -ExpandProperty DisplayVersion
|
||||||
|
$WDKVersion | Should -Not -BeNullOrEmpty
|
||||||
}
|
}
|
||||||
|
|
||||||
It "WDK version from system" {
|
It "Windows Driver Kit VSIX extension" -Skip:(Test-IsWin22) {
|
||||||
$version = Get-VSExtensionVersion -packageName "Microsoft.Windows.DriverKit"
|
$version = Get-VSExtensionVersion -packageName "Microsoft.Windows.DriverKit"
|
||||||
$version | Should -Not -BeNullOrEmpty
|
$version | Should -Not -BeNullOrEmpty
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -199,6 +199,7 @@
|
|||||||
"Microsoft.VisualStudio.Component.TestTools.CodedUITest",
|
"Microsoft.VisualStudio.Component.TestTools.CodedUITest",
|
||||||
"Microsoft.VisualStudio.Component.TestTools.WebLoadTest",
|
"Microsoft.VisualStudio.Component.TestTools.WebLoadTest",
|
||||||
"Microsoft.VisualStudio.Component.UWP.VC.ARM64",
|
"Microsoft.VisualStudio.Component.UWP.VC.ARM64",
|
||||||
|
"Microsoft.VisualStudio.Component.UWP.VC.ARM64EC",
|
||||||
"Microsoft.VisualStudio.Component.VC.CLI.Support",
|
"Microsoft.VisualStudio.Component.VC.CLI.Support",
|
||||||
"Microsoft.VisualStudio.Component.VC.CMake.Project",
|
"Microsoft.VisualStudio.Component.VC.CMake.Project",
|
||||||
"Microsoft.VisualStudio.Component.VC.DiagnosticTools",
|
"Microsoft.VisualStudio.Component.VC.DiagnosticTools",
|
||||||
@@ -214,9 +215,13 @@
|
|||||||
"Microsoft.VisualStudio.Component.VC.MFC.ARM",
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM",
|
||||||
"Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre",
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre",
|
||||||
"Microsoft.VisualStudio.Component.VC.ATL.ARM64",
|
"Microsoft.VisualStudio.Component.VC.ATL.ARM64",
|
||||||
|
"Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre",
|
||||||
|
"Microsoft.VisualStudio.Component.VC.ATL.ARM64EC",
|
||||||
|
"Microsoft.VisualStudio.Component.VC.ATL.ARM64EC.Spectre",
|
||||||
"Microsoft.VisualStudio.Component.VC.MFC.ARM64",
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM64",
|
||||||
"Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre",
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre",
|
||||||
"Microsoft.VisualStudio.Component.VC.MFC.ARM64EC",
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM64EC",
|
||||||
|
"Microsoft.VisualStudio.Component.VC.MFC.ARM64EC.Spectre",
|
||||||
"Microsoft.VisualStudio.Component.VC.Modules.x86.x64",
|
"Microsoft.VisualStudio.Component.VC.Modules.x86.x64",
|
||||||
"Microsoft.VisualStudio.Component.VC.Tools.ARM64",
|
"Microsoft.VisualStudio.Component.VC.Tools.ARM64",
|
||||||
"Microsoft.VisualStudio.Component.VC.Tools.ARM64EC",
|
"Microsoft.VisualStudio.Component.VC.Tools.ARM64EC",
|
||||||
|
|||||||
@@ -174,6 +174,7 @@
|
|||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts": [
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
||||||
|
"{{ template_dir }}/scripts/Installers/Install-WDK.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Vsix.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Vsix.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureCli.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-AzureCli.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1",
|
||||||
|
|||||||
Reference in New Issue
Block a user