Compare commits

..

7 Commits

Author SHA1 Message Date
aparnajyothi-y
0b6a6fa38c Update Go.Tests.ps1 2024-07-08 12:34:11 +05:30
aparnajyothi-y
638c3d6a70 Update Go.Tests.ps1 2024-06-28 17:35:33 +05:30
aparnajyothi-y
73f7463539 Update Go.Tests.ps1 2024-06-28 17:25:21 +05:30
aparnajyothi-y
81b9138763 Update Go.Tests.ps1 2024-06-28 17:17:32 +05:30
aparnajyothi-y
d0e62ec3da Update Go.Tests.ps1 2024-06-28 17:06:40 +05:30
aparnajyothi-y
f83c549263 Update Go.Tests.ps1 2024-06-28 16:59:37 +05:30
aparnajyothi-y
988185a8eb Update build-go-packages.yml 2024-06-28 16:53:15 +05:30
5 changed files with 22 additions and 1243 deletions

View File

@@ -23,7 +23,7 @@ on:
jobs: jobs:
go: go:
name: Go name: Go
uses: actions/versions-package-tools/.github/workflows/build-tool-packages.yml@main uses: actions/versions-package-tools/.github/workflows/build-tool-packages.yml@test-arm64
with: with:
tool-name: "go" tool-name: "go"
tool-version: ${{ inputs.VERSION || '1.19.0' }} tool-version: ${{ inputs.VERSION || '1.19.0' }}

View File

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

View File

@@ -1,7 +1,7 @@
name: Get Go versions name: Get Go versions
on: on:
schedule: schedule:
- cron: '0 0,12 * * *' - cron: '0 3,15 * * *'
workflow_dispatch: workflow_dispatch:
jobs: jobs:

View File

@@ -1,8 +1,6 @@
Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1") Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1")
Import-Module (Join-Path $PSScriptRoot "../helpers/common-helpers.psm1") Import-Module (Join-Path $PSScriptRoot "../helpers/common-helpers.psm1")
Describe "Go" {
BeforeAll { BeforeAll {
Set-Location -Path "source" Set-Location -Path "source"
$sourceLocation = Get-Location $sourceLocation = Get-Location
@@ -10,32 +8,17 @@ Describe "Go" {
function Get-UseGoLogs { function Get-UseGoLogs {
# GitHub Windows images don't have `HOME` variable # GitHub Windows images don't have `HOME` variable
$homeDir = $env:HOME ?? $env:HOMEDRIVE $homeDir = $env:HOME ?? $env:HOMEDRIVE
$possiblePaths = @( $logsFolderPath = Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages" -Resolve
Join-Path -Path $homeDir -ChildPath "actions-runner/cached/_diag/pages"
Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages"
)
$logsFolderPath = $possiblePaths | Where-Object { Test-Path $_ } | Select-Object -First 1 $useGoLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object {
$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 {
$logContent = Get-Content $_.Fullname -Raw $logContent = Get-Content $_.Fullname -Raw
return $logContent -match "setup-go@v" return $logContent -match "setup-go@v"
} | Select-Object -First 1 } | Select-Object -First 1
return $useGoLogFile.Fullname
# 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"
}
} }
} }
Describe "Go" {
It "is available" { It "is available" {
"go version" | Should -ReturnZeroExitCode "go version" | Should -ReturnZeroExitCode
} }
@@ -61,8 +44,14 @@ Describe "Go" {
} }
It "cached version is used without downloading" { It "cached version is used without downloading" {
Write-Host "Runner Type: $env:RUNNER_TYPE"
if ($env:RUNNER_TYPE -eq "self-hosted") { if ($env:RUNNER_TYPE -eq "GitHub") {
# 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"
} elseif ($env:RUNNER_TYPE -eq "self-hosted"){
# Get the installed version of Go # Get the installed version of Go
$goVersion = Invoke-Expression "go version" $goVersion = Invoke-Expression "go version"
# Check if Go is installed # Check if Go is installed
@@ -72,12 +61,6 @@ Describe "Go" {
$installedVersion = $installedVersion -replace "go", "" -replace "v", "" $installedVersion = $installedVersion -replace "go", "" -replace "v", ""
$expectedVersion = $env:VERSION -replace ".0", "" $expectedVersion = $env:VERSION -replace ".0", ""
$installedVersion | Should -BeLike "$expectedVersion*" $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"
} }
} }

File diff suppressed because it is too large Load Diff