azure-sdk-for-cpp/eng/common/scripts/Validate-All-Packages.ps1
Azure SDK Bot 7fa626d47c
Sync eng/common directory with azure-sdk-tools for PR 7855 (#5459)
* Pipeline template to validate package and update package work item

* Changes to restructure validations

* Additional fixes as per comments

* Remove explicit exit code

* Set erroractionpreference for change log check

---------

Co-authored-by: Praveen Kuttappan <prmarott@microsoft.com>
2024-03-27 15:01:11 -04:00

52 lines
1.5 KiB
PowerShell

[CmdletBinding()]
Param (
[Parameter(Mandatory=$True)]
[array]$ArtifactList,
[Parameter(Mandatory=$True)]
[string]$ArtifactPath,
[Parameter(Mandatory=$True)]
[string]$RepoRoot,
[Parameter(Mandatory=$True)]
[string]$APIKey,
[string]$ConfigFileDir,
[string]$BuildDefinition,
[string]$PipelineUrl,
[string]$APIViewUri = "https://apiview.dev/AutoReview/GetReviewStatus",
[string]$Devops_pat = $env:DEVOPS_PAT,
[bool] $IsReleaseBuild = $false
)
Set-StrictMode -Version 3
. (Join-Path $PSScriptRoot common.ps1)
function ProcessPackage($PackageName, $ConfigFileDir)
{
Write-Host "Artifact path: $($ArtifactPath)"
Write-Host "Package Name: $($PackageName)"
Write-Host "Config File directory: $($ConfigFileDir)"
&$EngCommonScriptsDir/Validate-Package.ps1 `
-PackageName $PackageName `
-ArtifactPath $ArtifactPath `
-RepoRoot $RepoRoot `
-APIViewUri $APIViewUri `
-APIKey $APIKey `
-BuildDefinition $BuildDefinition `
-PipelineUrl $PipelineUrl `
-ConfigFileDir $ConfigFileDir `
-Devops_pat $Devops_pat
if ($LASTEXITCODE -ne 0) {
Write-Error "Failed to validate package $PackageName"
exit 1
}
}
# Check if package config file is present. This file has package version, SDK type etc info.
if (-not $ConfigFileDir) {
$ConfigFileDir = Join-Path -Path $ArtifactPath "PackageInfo"
}
foreach ($artifact in $ArtifactList)
{
Write-Host "Processing $($artifact.name)"
ProcessPackage -PackageName $artifact.name -ConfigFileDir $ConfigFileDir
}