Compare commits

..

No commits in common. "main" and "1.21.4-6794457759" have entirely different histories.

6 changed files with 25 additions and 1859 deletions

View file

@ -13,4 +13,4 @@ jobs:
name: CodeQL analysis
uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main
with:
languages: '["go"]'
languages: "['go']"

View file

@ -44,7 +44,7 @@ class NixGoBuilder : GoBuilder {
$installationTemplateLocation = Join-Path -Path $this.InstallationTemplatesLocation -ChildPath $this.InstallationTemplateName
$installationTemplateContent = Get-Content -Path $installationTemplateLocation -Raw
$installationTemplateContent = $installationTemplateContent -f $this.Version.ToString(3), $this.Architecture
$installationTemplateContent = $installationTemplateContent -f $this.Version.ToString(3)
$installationTemplateContent | Out-File -FilePath $installationScriptLocation
Write-Debug "Done; Installation script location: $installationScriptLocation)"

View file

@ -1,11 +1,10 @@
set -e
GO_VERSION={0}
ARCH={1}
GO_TOOLCACHE_PATH=$AGENT_TOOLSDIRECTORY/go
GO_TOOLCACHE_VERSION_PATH=$GO_TOOLCACHE_PATH/$GO_VERSION
GO_TOOLCACHE_VERSION_ARCH_PATH=$GO_TOOLCACHE_VERSION_PATH/$ARCH
GO_TOOLCACHE_VERSION_ARCH_PATH=$GO_TOOLCACHE_VERSION_PATH/x64
echo "Check if Go hostedtoolcache folder exist..."
if [ ! -d $GO_TOOLCACHE_PATH ]; then
@ -23,4 +22,4 @@ cp -R ./* $GO_TOOLCACHE_VERSION_ARCH_PATH
rm $GO_TOOLCACHE_VERSION_ARCH_PATH/setup.sh
echo "Create complete file"
touch $GO_TOOLCACHE_VERSION_PATH/$ARCH.complete
touch $GO_TOOLCACHE_VERSION_PATH/x64.complete

View file

@ -1,41 +1,24 @@
Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1")
Import-Module (Join-Path $PSScriptRoot "../helpers/common-helpers.psm1")
Describe "Go" {
BeforeAll {
BeforeAll {
Set-Location -Path "source"
$sourceLocation = Get-Location
function Get-UseGoLogs {
# GitHub Windows images don't have `HOME` variable
$homeDir = $env:HOME ?? $env:HOMEDRIVE
$possiblePaths = @(
Join-Path -Path $homeDir -ChildPath "actions-runner/cached/_diag/pages"
Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages"
)
$logsFolderPath = Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages" -Resolve
$logsFolderPath = $possiblePaths | Where-Object { Test-Path $_ } | Select-Object -First 1
$resolvedPath = Resolve-Path -Path $logsFolderPath -ErrorAction SilentlyContinue
if ($resolvedPath -and -not [string]::IsNullOrEmpty($resolvedPath.Path) -and (Test-Path $resolvedPath.Path)) {
$useGoLogFile = Get-ChildItem -Path $resolvedPath | Where-Object {
$useGoLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object {
$logContent = Get-Content $_.Fullname -Raw
return $logContent -match "setup-go@v"
} | Select-Object -First 1
# Return the file name if a match is found
if ($useGoLogFile) {
return $useGoLogFile.FullName
} else {
Write-Error "No matching log file found in the specified path: $($resolvedPath.Path)"
}
} else {
Write-Error "The provided logs folder path is null, empty, or does not exist: $logsFolderPath"
}
return $useGoLogFile.Fullname
}
}
Describe "Go" {
It "is available" {
"go version" | Should -ReturnZeroExitCode
}
@ -61,25 +44,12 @@ Describe "Go" {
}
It "cached version is used without downloading" {
if ($env:RUNNER_TYPE -eq "self-hosted") {
# Get the installed version of Go
$goVersion = Invoke-Expression "go version"
# Check if Go is installed
$goVersion | Should -Not -BeNullOrEmpty
# Check if the installed version of Go is the expected version
$installedVersion = $goVersion -split " " | Select-Object -Index 2
$installedVersion = $installedVersion -replace "go", "" -replace "v", ""
$expectedVersion = $env:VERSION -replace ".0", ""
$installedVersion | Should -BeLike "$expectedVersion*"
}else {
# Analyze output of previous steps to check if Go was consumed from cache or downloaded
$useGoLogFile = Get-UseGoLogs
$useGoLogFile | Should -Exist
$useGoLogContent = Get-Content $useGoLogFile -Raw
$useGoLogContent | Should -Match "Found in cache"
}
}
It "Run simple code" {

File diff suppressed because it is too large Load diff