mirror of
https://github.com/actions/runner-images-sangeeth.git
synced 2025-12-16 14:56:48 +00:00
Add Pester tests for Windows Features (#1225)
* Add Windows Features Pester tests * Move win feature tests to separate file * Remove validation script for disc space * Remove Windows updates test
This commit is contained in:
committed by
GitHub
parent
6bc236a514
commit
956b8a0093
@@ -792,12 +792,6 @@
|
|||||||
"{{ template_dir }}/scripts/Installers/Validate-VSWhere.ps1"
|
"{{ template_dir }}/scripts/Installers/Validate-VSWhere.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "powershell",
|
|
||||||
"scripts":[
|
|
||||||
"{{ template_dir }}/scripts/Installers/Validate-DiskSpace.ps1"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts":[
|
||||||
|
|||||||
@@ -256,12 +256,6 @@
|
|||||||
"{{ template_dir }}/scripts/Installers/Validate-Wix.ps1"
|
"{{ template_dir }}/scripts/Installers/Validate-Wix.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "powershell",
|
|
||||||
"scripts":[
|
|
||||||
"{{ template_dir }}/scripts/Installers/Validate-WSL.ps1"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts":[
|
||||||
@@ -797,12 +791,6 @@
|
|||||||
"{{ template_dir }}/scripts/Installers/Validate-AliyunCli.ps1"
|
"{{ template_dir }}/scripts/Installers/Validate-AliyunCli.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "powershell",
|
|
||||||
"scripts":[
|
|
||||||
"{{ template_dir }}/scripts/Installers/Validate-DiskSpace.ps1"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts":[
|
||||||
|
|||||||
@@ -15,3 +15,5 @@ if ($cpu.VirtualizationFirmwareEnabled -and $cpu.SecondLevelAddressTranslationEx
|
|||||||
} else {
|
} else {
|
||||||
Write-Host "Skipping installation of Hyper-V feature"
|
Write-Host "Skipping installation of Hyper-V feature"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Invoke-PesterTests -TestFile "WindowsFeatures" -TestName "ContainersFeature"
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
################################################################################
|
|
||||||
## File: Validate-DiskSpace.ps1
|
|
||||||
## Desc: Validate free disk space
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
$availableSpaceMB = [math]::Round((Get-PSDrive -Name C).Free / 1MB)
|
|
||||||
$minimumFreeSpaceMB = 15 * 1024
|
|
||||||
|
|
||||||
Write-Host "Available disk space: $availableSpaceMB MB"
|
|
||||||
if ($availableSpaceMB -le $minimumFreeSpaceMB)
|
|
||||||
{
|
|
||||||
Write-Host "Not enough disk space on the image (minimum available space: $minimumFreeSpaceMB MB)"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
################################################################################
|
|
||||||
## File: Validate-WSL.ps1
|
|
||||||
## Desc: Validate WSL CLI existst
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
if (Get-Command -Name 'wsl')
|
|
||||||
{
|
|
||||||
Write-Host 'wsl is on path'
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Write-Host 'wsl not on path'
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
41
images/win/scripts/Tests/WindowsFeatures.Tests.ps1
Normal file
41
images/win/scripts/Tests/WindowsFeatures.Tests.ps1
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
Describe "WindowsFeatures" {
|
||||||
|
|
||||||
|
$testCases = @(
|
||||||
|
@{ FeatureName = "NET-Framework-Features" }
|
||||||
|
@{ FeatureName = "NET-Framework-45-Features" }
|
||||||
|
@{ FeatureName = "FS-iSCSITarget-Server" }
|
||||||
|
)
|
||||||
|
|
||||||
|
if (Test-isWin16) {
|
||||||
|
$testCases += @{ FeatureName = "BITS" }
|
||||||
|
$testCases += @{ FeatureName = "DSC-Service" }
|
||||||
|
}
|
||||||
|
if (Test-isWin19) {
|
||||||
|
$testCases += @{ FeatureName = "Microsoft-Windows-Subsystem-Linux" }
|
||||||
|
}
|
||||||
|
|
||||||
|
It "Windows Feature <FeatureName> is installed" -TestCases $testCases {
|
||||||
|
(Get-WindowsFeature -Name $FeatureName).InstallState | Should -Be "Installed"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Test-isWin19) {
|
||||||
|
it "Check WSL is on path" {
|
||||||
|
(Get-Command -Name 'wsl') | Should -BeTrue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Describe "ContainersFeature" {
|
||||||
|
It "Windows containers feature is installed" {
|
||||||
|
(Get-WindowsFeature -Name "Containers").InstallState | Should -Be "Installed"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Describe "DiskSpace" {
|
||||||
|
it "The image has enough disk space"{
|
||||||
|
$availableSpaceMB = [math]::Round((Get-PSDrive -Name C).Free / 1MB)
|
||||||
|
$minimumFreeSpaceMB = 18 * 1024
|
||||||
|
|
||||||
|
$availableSpaceMB | Should -BeGreaterThan $minimumFreeSpaceMB
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user