mirror of
https://github.com/actions/runner-images.git
synced 2025-12-13 04:37:09 +00:00
* [Windows] Reimplement function resolving GH asset * Fix tests and software report * Fix selenium-server version check
101 lines
2.7 KiB
PowerShell
101 lines
2.7 KiB
PowerShell
$browsers = @{
|
|
chrome = @{
|
|
Name="Google Chrome";
|
|
File="chrome.exe"
|
|
};
|
|
edge = @{
|
|
Name="Microsoft Edge";
|
|
File="msedge.exe"
|
|
};
|
|
firefox = @{
|
|
Name="Mozilla Firefox";
|
|
File="firefox.exe"
|
|
}
|
|
}
|
|
|
|
$webDrivers = @{
|
|
chrome = @{
|
|
Name="Chrome Driver";
|
|
Path="C:\SeleniumWebDrivers\ChromeDriver"
|
|
};
|
|
edge = @{
|
|
Name="Microsoft Edge Driver";
|
|
Path="C:\SeleniumWebDrivers\EdgeDriver"
|
|
};
|
|
firefox = @{
|
|
Name="Gecko Driver";
|
|
Path="C:\SeleniumWebDrivers\GeckoDriver"
|
|
};
|
|
iexplorer = @{
|
|
Name="IE Driver";
|
|
Path="C:\SeleniumWebDrivers\IEDriver"
|
|
}
|
|
}
|
|
|
|
function Build-BrowserSection {
|
|
return @(
|
|
$(Get-BrowserVersion -Browser "chrome"),
|
|
$(Get-SeleniumWebDriverVersion -Driver "chrome"),
|
|
$(Get-BrowserVersion -Browser "edge"),
|
|
$(Get-SeleniumWebDriverVersion -Driver "edge"),
|
|
$(Get-BrowserVersion -Browser "firefox"),
|
|
$(Get-SeleniumWebDriverVersion -Driver "firefox"),
|
|
$(Get-SeleniumWebDriverVersion -Driver "iexplorer"),
|
|
$(Get-SeleniumVersion)
|
|
)
|
|
}
|
|
|
|
function Get-BrowserVersion {
|
|
param(
|
|
[string] $Browser
|
|
)
|
|
$browserName = $browsers.$Browser.Name
|
|
$browserFile = $browsers.$Browser.File
|
|
$registryKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\$browserFile"
|
|
$browserVersion = (Get-Item (Get-ItemProperty $registryKey)."(Default)").VersionInfo.FileVersion
|
|
return [ToolVersionNode]::new($browserName, $browserVersion)
|
|
}
|
|
|
|
function Get-SeleniumWebDriverVersion {
|
|
param(
|
|
[string] $Driver
|
|
)
|
|
$driverName = $webDrivers.$Driver.Name
|
|
$driverPath = $webDrivers.$Driver.Path
|
|
$versionFileName = "versioninfo.txt";
|
|
$webDriverVersion = Get-Content -Path "$driverPath\$versionFileName"
|
|
return [ToolVersionNode]::new($driverName, $webDriverVersion)
|
|
}
|
|
|
|
function Get-SeleniumVersion {
|
|
$seleniumBinaryName = "selenium-server"
|
|
$fullSeleniumVersion = (Get-ChildItem "C:\selenium\${seleniumBinaryName}-*").Name -replace "${seleniumBinaryName}-"
|
|
return [ToolVersionNode]::new("Selenium server", $fullSeleniumVersion)
|
|
}
|
|
|
|
function Build-BrowserWebdriversEnvironmentTable {
|
|
return @(
|
|
@{
|
|
"Name" = "CHROMEWEBDRIVER"
|
|
"Value" = $env:CHROMEWEBDRIVER
|
|
},
|
|
@{
|
|
"Name" = "EDGEWEBDRIVER"
|
|
"Value" = $env:EDGEWEBDRIVER
|
|
},
|
|
@{
|
|
"Name" = "GECKOWEBDRIVER"
|
|
"Value" = $env:GECKOWEBDRIVER
|
|
},
|
|
@{
|
|
"Name" = "SELENIUM_JAR_PATH"
|
|
"Value" = $env:SELENIUM_JAR_PATH
|
|
}
|
|
) | ForEach-Object {
|
|
[PSCustomObject] @{
|
|
"Name" = $_.Name
|
|
"Value" = $_.Value
|
|
}
|
|
}
|
|
}
|