diff --git a/eng/common/pipelines/templates/steps/verify-changelogs.yml b/eng/common/pipelines/templates/steps/verify-changelogs.yml index a484001d0..3f36954f4 100644 --- a/eng/common/pipelines/templates/steps/verify-changelogs.yml +++ b/eng/common/pipelines/templates/steps/verify-changelogs.yml @@ -6,12 +6,6 @@ parameters: default: succeeded() steps: - - pwsh: | - Get-ChildItem -Recurse -Path "$(Build.SourcesDirectory)/sdk" -Include ci.yml ` - | ForEach-Object { Get-Content $_ -Raw | yq -o=json > "$($_.FullName).json" } - displayName: Generate ci.yml.json - condition: ${{ parameters.Condition }} - - task: Powershell@2 inputs: filePath: $(Build.SourcesDirectory)/eng/common/scripts/Verify-ChangeLogs.ps1 diff --git a/eng/common/scripts/Verify-ChangeLogs.ps1 b/eng/common/scripts/Verify-ChangeLogs.ps1 index 95e81ebbd..1aeb33a52 100644 --- a/eng/common/scripts/Verify-ChangeLogs.ps1 +++ b/eng/common/scripts/Verify-ChangeLogs.ps1 @@ -8,17 +8,16 @@ Set-StrictMode -Version 3 . (Join-Path $PSScriptRoot common.ps1) function ShouldVerifyChangeLog ($ServiceDirectory, $PackageName) { - $jsonCiYmlPath = Join-Path $ServiceDirectory "ci.yml.json" + $jsonCiYmlPath = Join-Path $ServiceDirectory "ci.yml" if (Test-Path $jsonCiYmlPath) { - $ciYml = ConvertFrom-Json (Get-Content $jsonCiYmlPath -Raw) -AsHashTable + $ciYml = Get-Content $jsonCiYmlPath -Raw | yq -o=json | ConvertFrom-Json -AsHashTable if ($ciYml.extends -and $ciYml.extends.parameters -and $ciYml.extends.parameters.Artifacts) { $packagesCheckingChangeLog = $ciYml.extends.parameters.Artifacts ` | Where-Object { -not ($_["skipVerifyChangelog"] -eq $true) } ` | Select-Object -ExpandProperty name - if ($packagesCheckingChangeLog -contains $PackageName) { return $true @@ -29,6 +28,11 @@ function ShouldVerifyChangeLog ($ServiceDirectory, $PackageName) { } } +if (-not (Get-Command 'yq' -ErrorAction SilentlyContinue)) { + Write-Host "Error: 'yq' is not installed or not found in PATH. Please remedy this before running this script." + exit 1 +} + # find which packages we need to confirm the changelog for $packageProperties = Get-ChildItem -Recurse "$PackagePropertiesFolder" *.json