azure-sdk-for-cpp/eng/common/scripts/SetTestPipelineVersion.ps1
Azure SDK Bot ef2f8d92c9
Fix null errors in SetTestPipelineVersion, Update Package Upload step name. (#3813)
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
2022-07-07 14:17:16 -07:00

44 lines
1.2 KiB
PowerShell

# Sets a valid version for a package using the buildID
param (
[Parameter(mandatory = $true)]
$BuildID,
[Parameter(mandatory = $true)]
$PackageName,
[Parameter(mandatory = $true)]
$ServiceDirectory
)
. (Join-Path $PSScriptRoot common.ps1)
Write-Host "PackageName: $PackageName"
Write-Host "ServiceDirectory: $ServiceDirectory"
Write-Host "BuildID: $BuildID"
$newVersion = [AzureEngSemanticVersion]::new("1.0.0")
$latestTags = git tag -l "${PackageName}_*"
Write-Host "Get Latest Tag : git tag -l ${PackageName}_*"
$semVars = @()
if ($latestTags -and ($latestTags.Length -gt 0))
{
foreach ($tags in $latestTags)
{
$semVars += $tags.Replace("${PackageName}_", "")
}
$semVarsSorted = [AzureEngSemanticVersion]::SortVersionStrings($semVars)
Write-Host "Last Published Version $($semVarsSorted[0])"
$newVersion = [AzureEngSemanticVersion]::new($semVarsSorted[0])
}
$newVersion.PrereleaseLabel = $newVersion.DefaultPrereleaseLabel
$newVersion.PrereleaseNumber = $BuildID
$newVersion.IsPrerelease = $True
Write-Host "Version to publish [ $($newVersion.ToString()) ]"
SetPackageVersion -PackageName $PackageName `
-Version $newVersion.ToString() `
-ServiceDirectory $ServiceDirectory