diff --git a/eng/common/pipelines/templates/steps/run-pester-tests.yml b/eng/common/pipelines/templates/steps/run-pester-tests.yml index 67372bdb73b0..38609001743c 100644 --- a/eng/common/pipelines/templates/steps/run-pester-tests.yml +++ b/eng/common/pipelines/templates/steps/run-pester-tests.yml @@ -14,8 +14,14 @@ parameters: steps: - pwsh: | - Install-Module -Name Pester -Force - displayName: Install Pester + . (Join-Path "$(Build.SourcesDirectory)" eng common scripts Helpers PSModule-Helpers.ps1) + Install-ModuleIfNotInstalled "Pester" "5.7.1" | Import-Module + + # Test: install powershell-yaml from internal feed (upstream to PSGallery) + $m = Install-ModuleIfNotInstalled "powershell-yaml" "0.4.1" + Write-Host "Installed powershell-yaml version: $($m.Version)" + $m | Import-Module + displayName: Install Pester and test modules # default test steps - ${{ if eq(length(parameters.CustomTestSteps), 0) }}: diff --git a/eng/common/scripts/Helpers/PSModule-Helpers.ps1 b/eng/common/scripts/Helpers/PSModule-Helpers.ps1 index f79ce1a5214b..8293e5cf00c9 100644 --- a/eng/common/scripts/Helpers/PSModule-Helpers.ps1 +++ b/eng/common/scripts/Helpers/PSModule-Helpers.ps1 @@ -47,20 +47,10 @@ function Update-PSModulePathForCI() { } function Get-ModuleRepositories([string]$moduleName) { - $DefaultPSRepositoryUrl = "https://www.powershellgallery.com/api/v2" - # List of modules+versions we want to replace with internal feed sources for reliability, security, etc. - $packageFeedOverrides = @{ - 'powershell-yaml' = 'https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk-tools/nuget/v2' - } - - $repoUrls = if ($packageFeedOverrides.Contains("${moduleName}")) { - @($packageFeedOverrides["${moduleName}"], $DefaultPSRepositoryUrl) - } - else { - @($DefaultPSRepositoryUrl) - } + # Use internal Azure Artifacts feed only. + $InternalPSRepositoryUrl = "https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk-tools/nuget/v2" - return $repoUrls + return @($InternalPSRepositoryUrl) } function moduleIsInstalled([string]$moduleName, [string]$version) { @@ -153,6 +143,7 @@ function Install-ModuleIfNotInstalled() { $repoUrls = Get-ModuleRepositories $moduleName + Write-Host "Module '$moduleName' with version '$version' is not installed. Attempting to install from $($repoUrls -join ", ")." foreach ($url in $repoUrls) { try { $module = installModule -moduleName $moduleName -version $version -repoUrl $url diff --git a/eng/common/scripts/Verify-Resource-Ref.ps1 b/eng/common/scripts/Verify-Resource-Ref.ps1 index 8669a2988342..f6c4d1b2dc0d 100644 --- a/eng/common/scripts/Verify-Resource-Ref.ps1 +++ b/eng/common/scripts/Verify-Resource-Ref.ps1 @@ -1,5 +1,6 @@ . (Join-Path $PSScriptRoot common.ps1) -Install-Module -Name powershell-yaml -RequiredVersion 0.4.7 -Force -Scope CurrentUser +. (Join-Path $PSScriptRoot Helpers PSModule-Helpers.ps1) +Install-ModuleIfNotInstalled "powershell-yaml" "0.4.7" | Import-Module $ymlfiles = Get-ChildItem $RepoRoot -recurse | Where-Object {$_ -like '*.yml'} $affectedRepos = [System.Collections.ArrayList]::new() diff --git a/eng/scripts/Update-Artifacts-List-For-Patch-Release.ps1 b/eng/scripts/Update-Artifacts-List-For-Patch-Release.ps1 index 9a2de59bf5a5..642950b42f59 100644 --- a/eng/scripts/Update-Artifacts-List-For-Patch-Release.ps1 +++ b/eng/scripts/Update-Artifacts-List-For-Patch-Release.ps1 @@ -23,7 +23,7 @@ if (!(Test-Path $SourcesDirectory -PathType Container)) { exit 1 } -Install-ModuleIfNotInstalled "powershell-yaml" "0.4.1" | Import-Module +Install-ModuleIfNotInstalled "powershell-yaml" "0.4.7" | Import-Module $artifactsDict = [ordered]@{} $addModulesDict = [ordered]@{} diff --git a/eng/versioning/pom_file_version_scanner.ps1 b/eng/versioning/pom_file_version_scanner.ps1 index ad1e5a6740a1..085dd6398f9c 100644 --- a/eng/versioning/pom_file_version_scanner.ps1 +++ b/eng/versioning/pom_file_version_scanner.ps1 @@ -61,7 +61,7 @@ if ($UseVerboseLogging) { Write-Host "SdkRoot=$SdkRoot" } -Install-ModuleIfNotInstalled "powershell-yaml" "0.4.1" | Import-Module +Install-ModuleIfNotInstalled "powershell-yaml" "0.4.7" | Import-Module $StartTime = $(get-date)