From 65d72382e3597a38433997c7414f85f640b0303c Mon Sep 17 00:00:00 2001 From: ray chen Date: Tue, 9 Dec 2025 21:49:41 +0000 Subject: [PATCH 1/3] Fetched package properties by groupId and pkgName --- eng/scripts/Generate-Patch.ps1 | 8 ++++---- eng/scripts/Language-Settings.ps1 | 4 ++-- eng/scripts/bomhelpers.ps1 | 2 +- eng/scripts/patchhelpers.ps1 | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/scripts/Generate-Patch.ps1 b/eng/scripts/Generate-Patch.ps1 index 76590366af35..d5c0fd9cc215 100644 --- a/eng/scripts/Generate-Patch.ps1 +++ b/eng/scripts/Generate-Patch.ps1 @@ -82,7 +82,7 @@ function GetRemoteName($MainRemoteUrl) { return $null } -function ResetSourcesToReleaseTag($ArtifactName, $ServiceDirectoryName, $ReleaseVersion, $RepoRoot, $RemoteName) { +function ResetSourcesToReleaseTag($ArtifactName, $ServiceDirectoryName, $ReleaseVersion, $RepoRoot, $RemoteName, $GroupId = "com.azure") { $ReleaseTag = "${ArtifactName}_${ReleaseVersion}" Write-Information "Resetting the $ArtifactName sources to the release $ReleaseTag." @@ -92,7 +92,7 @@ function ResetSourcesToReleaseTag($ArtifactName, $ServiceDirectoryName, $Release $ArtifactDirPath = Join-Path $ServiceDirPath $ArtifactName TestPathThrow -Path $ArtifactDirPath -PathName 'ArtifactDirPath' - $pkgProperties = Get-PkgProperties -PackageName $ArtifactName -ServiceDirectory $ServiceDirectoryName + $pkgProperties = Get-PkgProperties -PackageName $ArtifactName -ServiceDirectory $ServiceDirectoryName -GroupId $GroupId $currentPackageVersion = $pkgProperties.Version if($currentPackageVersion -eq $ReleaseVersion) { Write-Information "We do not have to reset the sources." @@ -162,7 +162,7 @@ function CreatePatchRelease($ArtifactName, $ServiceDirectoryName, $PatchVersion, $EngVersioningDir = Join-Path $EngDir "versioning" $SetVersionFilePath = Join-Path $EngVersioningDir "set_versions.py" $UpdateVersionFilePath = Join-Path $EngVersioningDir "update_versions.py" - $pkgProperties = Get-PkgProperties -PackageName $ArtifactName -ServiceDirectory $ServiceDirectoryName + $pkgProperties = Get-PkgProperties -PackageName $ArtifactName -ServiceDirectory $ServiceDirectoryName -GroupId $GroupId $ChangelogPath = $pkgProperties.ChangeLogPath $PomFilePath = Join-Path $pkgProperties.DirectoryPath "pom.xml" @@ -264,7 +264,7 @@ try { ## Hard resetting it to the contents of the release tag. ## Fetching all the tags from the remote branch - ResetSourcesToReleaseTag -ArtifactName $ArtifactName -ServiceDirectoryName $ServiceDirectoryName -ReleaseVersion $ReleaseVersion -RepoRoot $RepoRoot -RemoteName $RemoteName + ResetSourcesToReleaseTag -ArtifactName $ArtifactName -ServiceDirectoryName $ServiceDirectoryName -ReleaseVersion $ReleaseVersion -RepoRoot $RepoRoot -RemoteName $RemoteName -GroupId $GroupId CreatePatchRelease -ArtifactName $ArtifactName -ServiceDirectoryName $ServiceDirectoryName -PatchVersion $PatchVersion -RepoRoot $RepoRoot $cmdOutput = git add $RepoRoot if($LASTEXITCODE -ne 0) { diff --git a/eng/scripts/Language-Settings.ps1 b/eng/scripts/Language-Settings.ps1 index 4068c4719be4..49d687018c2a 100644 --- a/eng/scripts/Language-Settings.ps1 +++ b/eng/scripts/Language-Settings.ps1 @@ -350,7 +350,7 @@ function Get-java-PackageInfoFromPackageFile ($pkg, $workingDirectory) PackageId = $pkgId GroupId = $groupId PackageVersion = $pkgVersion - ReleaseTag = "$($pkgId)_$($pkgVersion)" + ReleaseTag = "$($groupId)+$($pkgId)_$($pkgVersion)" Deployable = $forceCreate -or !(IsMavenPackageVersionPublished -pkgId $pkgId -pkgVersion $pkgVersion -groupId $groupId.Replace(".", "/")) ReleaseNotes = $releaseNotes ReadmeContent = $readmeContent @@ -548,7 +548,7 @@ function SetPackageVersion ($PackageName, $Version, $ServiceDirectory, $ReleaseD # -ll option says "only update README and CHANGELOG entries for libraries that are on the list" python "$EngDir/versioning/update_versions.py" --library-list $fullLibraryName & "$EngCommonScriptsDir/Update-ChangeLog.ps1" -Version $Version -ServiceDirectory $ServiceDirectory -PackageName $PackageName ` - -Unreleased $False -ReplaceLatestEntryTitle $ReplaceLatestEntryTitle -ReleaseDate $ReleaseDate + -Unreleased $False -ReplaceLatestEntryTitle $ReplaceLatestEntryTitle -ReleaseDate $ReleaseDate -GroupId $GroupId } function GetExistingPackageVersions ($PackageName, $GroupId=$null) diff --git a/eng/scripts/bomhelpers.ps1 b/eng/scripts/bomhelpers.ps1 index e9e4d46ab3bc..58fb69151052 100644 --- a/eng/scripts/bomhelpers.ps1 +++ b/eng/scripts/bomhelpers.ps1 @@ -305,7 +305,7 @@ function GeneratePatch($PatchInfo, [string]$BranchName, [string]$RemoteName, [st $releaseTag = "$($artifactId)_$($releaseVersion)" if (!$currentPomFileVersion -or !$artifactDirPath -or !$changelogPath) { - $pkgProperties = [PackageProps](Get-PkgProperties -PackageName $artifactId -ServiceDirectory $serviceDirectoryName) + $pkgProperties = [PackageProps](Get-PkgProperties -PackageName $artifactId -ServiceDirectory $serviceDirectoryName -GroupId $GroupId) $artifactDirPath = $pkgProperties.DirectoryPath $currentPomFileVersion = $pkgProperties.Version $changelogPath = $pkgProperties.ChangeLogPath diff --git a/eng/scripts/patchhelpers.ps1 b/eng/scripts/patchhelpers.ps1 index 0d7af4035f9f..4682298462de 100644 --- a/eng/scripts/patchhelpers.ps1 +++ b/eng/scripts/patchhelpers.ps1 @@ -89,7 +89,7 @@ function UpdateCIInformation($ArtifactInfos) { $serviceDirectory = $arInfo.ServiceDirectoryName if (!$serviceDirectory) { - $pkgProperties = [PackageProps](Get-PkgProperties -PackageName $artifactId -ServiceDirectory $serviceDirectory) + $pkgProperties = [PackageProps](Get-PkgProperties -PackageName $artifactId -ServiceDirectory $serviceDirectory -GroupId $arInfo.GroupId) $arInfo.ServiceDirectoryName = $pkgProperties.ServiceDirectory $arInfo.ArtifactDirPath = $pkgProperties.DirectoryPath $arInfo.CurrentPomFileVersion = $pkgProperties.Version @@ -188,7 +188,7 @@ function UpdateDependenciesInVersionClient([hashtable]$ArtifactInfos) { # Get the release version for the next bom artifact. function GetNextBomVersion() { - $pkgProperties = [PackageProps](Get-PkgProperties -PackageName "azure-sdk-bom") + $pkgProperties = [PackageProps](Get-PkgProperties -PackageName "azure-sdk-bom" -GroupId "com.azure") $currentVersion = $pkgProperties.Version $patchVersion = GetPatchVersion -ReleaseVersion $currentVersion From 1e21eab1e5f3f14a4a80599bc0d7423b3f160919 Mon Sep 17 00:00:00 2001 From: ray chen Date: Wed, 10 Dec 2025 01:22:31 +0000 Subject: [PATCH 2/3] Updated release tag for patch release and bom release --- eng/scripts/Generate-Patch.ps1 | 2 +- eng/scripts/bomhelpers.ps1 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/scripts/Generate-Patch.ps1 b/eng/scripts/Generate-Patch.ps1 index d5c0fd9cc215..1eccd3b2e672 100644 --- a/eng/scripts/Generate-Patch.ps1 +++ b/eng/scripts/Generate-Patch.ps1 @@ -83,7 +83,7 @@ function GetRemoteName($MainRemoteUrl) { } function ResetSourcesToReleaseTag($ArtifactName, $ServiceDirectoryName, $ReleaseVersion, $RepoRoot, $RemoteName, $GroupId = "com.azure") { - $ReleaseTag = "${ArtifactName}_${ReleaseVersion}" + $ReleaseTag = "${GroupId}+${ArtifactName}_${ReleaseVersion}" Write-Information "Resetting the $ArtifactName sources to the release $ReleaseTag." $SdkDirPath = Join-Path $RepoRoot "sdk" diff --git a/eng/scripts/bomhelpers.ps1 b/eng/scripts/bomhelpers.ps1 index 58fb69151052..d6f45d1e10f9 100644 --- a/eng/scripts/bomhelpers.ps1 +++ b/eng/scripts/bomhelpers.ps1 @@ -303,7 +303,7 @@ function GeneratePatch($PatchInfo, [string]$BranchName, [string]$RemoteName, [st Write-Output "PatchVersion is: $patchVersion" } - $releaseTag = "$($artifactId)_$($releaseVersion)" + $releaseTag = "$($GroupId)+$($artifactId)_$($releaseVersion)" if (!$currentPomFileVersion -or !$artifactDirPath -or !$changelogPath) { $pkgProperties = [PackageProps](Get-PkgProperties -PackageName $artifactId -ServiceDirectory $serviceDirectoryName -GroupId $GroupId) $artifactDirPath = $pkgProperties.DirectoryPath From 78bd73f47db61a1cef89e2516508ad7a53b2f8ff Mon Sep 17 00:00:00 2001 From: ray chen Date: Wed, 10 Dec 2025 19:08:22 +0000 Subject: [PATCH 3/3] Falled back to fetch the old tag format --- eng/scripts/Generate-Patch.ps1 | 13 +++++++++++-- eng/scripts/bomhelpers.ps1 | 14 ++++++++++++-- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/eng/scripts/Generate-Patch.ps1 b/eng/scripts/Generate-Patch.ps1 index 1eccd3b2e672..d5eae21e087b 100644 --- a/eng/scripts/Generate-Patch.ps1 +++ b/eng/scripts/Generate-Patch.ps1 @@ -108,8 +108,17 @@ function ResetSourcesToReleaseTag($ArtifactName, $ServiceDirectoryName, $Release Write-Information "Fetching all the tags from $RemoteName" $CmdOutput = git fetch $RemoteName $ReleaseTag if($LASTEXITCODE -ne 0) { - LogError "Could not restore the tags for release tag $ReleaseTag" - exit 1 + # Fall back to old tag format: _ + $OldReleaseTag = "${ArtifactName}_${ReleaseVersion}" + Write-Information "Failed to fetch new tag format. Trying old tag format: $OldReleaseTag" + $CmdOutput = git fetch $RemoteName $OldReleaseTag + + if($LASTEXITCODE -ne 0) { + LogError "Could not restore the tags for release tag $ReleaseTag or $OldReleaseTag" + exit 1 + } + + $ReleaseTag = $OldReleaseTag } $cmdOutput = git restore --source $ReleaseTag -W -S $ArtifactDirPath diff --git a/eng/scripts/bomhelpers.ps1 b/eng/scripts/bomhelpers.ps1 index d6f45d1e10f9..56a86cdd1b18 100644 --- a/eng/scripts/bomhelpers.ps1 +++ b/eng/scripts/bomhelpers.ps1 @@ -323,8 +323,18 @@ function GeneratePatch($PatchInfo, [string]$BranchName, [string]$RemoteName, [st $cmdOutput = git fetch $RemoteName $releaseTag if ($LASTEXITCODE -ne 0) { - LogError "Could not restore the tags for release tag $releaseTag" - exit $LASTEXITCODE + # Fall back to old tag format: _ + $oldReleaseTag = "$($artifactId)_$($releaseVersion)" + Write-Output "Failed to fetch new tag format. Trying old tag format: $oldReleaseTag" + Write-Host "git fetch $RemoteName $oldReleaseTag" + $cmdOutput = git fetch $RemoteName $oldReleaseTag + + if ($LASTEXITCODE -ne 0) { + LogError "Could not restore the tags for release tag $releaseTag or $oldReleaseTag" + exit $LASTEXITCODE + } + + $releaseTag = $oldReleaseTag } Write-Host "git restore --source $releaseTag -W -S $artifactDirPath"