Sync eng/common directory with azure-sdk-tools for PR 9381 (#2977)
* change our verifyChangelogs over to utilizing the artifact details. if we don't have an artifact details at all, don't verify changelog. if we do, but skipverifychangelog is present, don't verify changelog. if we have artifact details, but no disable, verify the changelog --------- Co-authored-by: Scott Beddall <scbedd@microsoft.com>
This commit is contained in:
Родитель
d414d5a7ae
Коммит
a7bc0fed0c
|
@ -7,30 +7,17 @@ Set-StrictMode -Version 3
|
|||
|
||||
. (Join-Path $PSScriptRoot common.ps1)
|
||||
|
||||
function ShouldVerifyChangeLog ($ServiceDirectory, $PackageName) {
|
||||
$jsonCiYmlPath = Join-Path $ServiceDirectory "ci.yml"
|
||||
|
||||
if (Test-Path $jsonCiYmlPath)
|
||||
{
|
||||
$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
|
||||
} else {
|
||||
return $false
|
||||
}
|
||||
}
|
||||
function ShouldVerifyChangeLog ($PkgArtifactDetails) {
|
||||
if ($PkgArtifactDetails) {
|
||||
if ($PkgArtifactDetails.PSObject.Properties["skipVerifyChangeLog"] -eq $true) {
|
||||
return $false
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
return $true
|
||||
}
|
||||
|
||||
return $false
|
||||
}
|
||||
|
||||
# find which packages we need to confirm the changelog for
|
||||
|
@ -41,7 +28,7 @@ $allPassing = $true
|
|||
foreach($propertiesFile in $packageProperties) {
|
||||
$PackageProp = Get-Content -Path $propertiesFile | ConvertFrom-Json
|
||||
|
||||
if (-not (ShouldVerifyChangeLog -ServiceDirectory (Join-Path $RepoRoot "sdk" $PackageProp.ServiceDirectory) -PackageName $PackageProp.Name)) {
|
||||
if (-not (ShouldVerifyChangeLog $PackageProp.ArtifactDetails)) {
|
||||
Write-Host "Skipping changelog verification for $($PackageProp.Name)"
|
||||
continue
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче