diff --git a/eng/scripts/Get-PkgVersion.ps1 b/eng/scripts/Get-PkgVersion.ps1 index 5c8dfd03a..10be95d86 100644 --- a/eng/scripts/Get-PkgVersion.ps1 +++ b/eng/scripts/Get-PkgVersion.ps1 @@ -1,35 +1,20 @@ [CmdletBinding()] param ( - [Parameter(Mandatory = $true)] [string] $ServiceDirectory, [Parameter(Mandatory = $true)] [string] $PackageName ) -$repoRoot = Resolve-Path "$PSScriptRoot/../.."; -. (Join-Path ${repoRoot} eng common scripts logging.ps1) -. (Join-Path ${repoRoot} eng scripts SdkVersion-Common.ps1) +. (Join-Path $PSScriptRoot ".." common scripts common.ps1) $versionFileLocation = Get-VersionHppLocation ` -ServiceDirectory $ServiceDirectory ` -PackageName $PackageName if (!$versionFileLocation) { - $fallbackpath = Join-Path $RepoRoot sdk $ServiceDirectory $PackageName version.txt - if (!(Test-Path $fallbackpath)) - { - LogWarning "Failed to retrieve package version. No version file found." - return $null - } - - $fallback = Get-Content $fallbackpath - if ($fallback) { - return $fallback - } else { - LogWarning "Cannot locate package version" - return $null - } + LogWarning "Failed to retrieve package version for '$ServiceDirectory/$PackageName'. No version file found." + return $null } $versionFileContents = Get-Content $versionFileLocation -Raw diff --git a/eng/scripts/Language-Settings.ps1 b/eng/scripts/Language-Settings.ps1 index ab92dc3f4..4ecd6cb3f 100644 --- a/eng/scripts/Language-Settings.ps1 +++ b/eng/scripts/Language-Settings.ps1 @@ -5,9 +5,14 @@ $packagePattern = "package-info.json" $MetadataUri = "https://raw.githubusercontent.com/Azure/azure-sdk/master/_data/releases/latest/cpp-packages.csv" $BlobStorageUrl = "https://azuresdkdocs.blob.core.windows.net/%24web?restype=container&comp=list&prefix=cpp%2F&delimiter=%2F" +$VersionRegex = '(#define AZURE_\w+_VERSION_MAJOR )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_MINOR )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_PATCH )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_PRERELEASE )"(?[a-zA-Z0-9.]*)"'; +function Get-VersionHppLocation ($ServiceDirectory, $PackageName) { + $versionHppLocation = Get-ChildItem package_version.hpp -Path "$RepoRoot/sdk/$ServiceDirectory/$PackageName" -Recurse + Write-Verbose "package_version.hpp location: $versionHppLocation" + return $versionHppLocation +} - -function Get-cpp-PackageInfoFromRepo($pkgPath, $serviceDirectory) +function Get-cpp-PackageInfoFromRepo($pkgPath, $serviceDirectory) { $pkgName = Split-Path -Leaf $pkgPath $packageVersion = & $PSScriptRoot/Get-PkgVersion.ps1 -ServiceDirectory $serviceDirectory -PackageName $pkgName @@ -15,13 +20,15 @@ function Get-cpp-PackageInfoFromRepo($pkgPath, $serviceDirectory) { $packageProps = [PackageProps]::new($pkgName, $packageVersion, $pkgPath, $serviceDirectory) $packageProps.ArtifactName = $pkgName + $packageProps.IsNewSDK = "true" + $packageProps.SdkType = "client" return $packageProps } return $null } # Parse out package publishing information from a package-info.json file. -function Get-cpp-PackageInfoFromPackageFile($pkg, $workingDirectory) +function Get-cpp-PackageInfoFromPackageFile($pkg, $workingDirectory) { $packageInfo = Get-Content -Raw -Path $pkg | ConvertFrom-Json $packageArtifactLocation = (Get-ItemProperty $pkg).Directory.FullName @@ -63,7 +70,7 @@ function Publish-cpp-GithubIODocs ($DocLocation, $PublicArtifactLocation) Upload-Blobs -DocDir $DocLocation -PkgName $packageInfo.name -DocVersion $packageInfo.version -ReleaseTag $releaseTag } -function Get-cpp-GithubIoDocIndex() +function Get-cpp-GithubIoDocIndex() { # Update the main.js and docfx.json language content UpdateDocIndexFiles -appTitleLang "C++" @@ -77,8 +84,11 @@ function Get-cpp-GithubIoDocIndex() GenerateDocfxTocContent -tocContent $tocContent -lang "C++" } -function SetPackageVersion ($PackageName, $Version, $ServiceDirectory) +function SetPackageVersion ($PackageName, $Version, $ServiceDirectory, $ReleaseDate) { - & "$EngDir/scripts/Update-PkgVersion.ps1" -ServiceDirectory $ServiceDirectory -PackageName $PackageName ` - -NewVersionString $Version + & "$EngDir/scripts/Update-PkgVersion.ps1" ` + -ServiceDirectory $ServiceDirectory ` + -PackageName $PackageName ` + -NewVersionString $Version ` + -ReleaseDate $ReleaseDate } diff --git a/eng/scripts/SdkVersion-Common.ps1 b/eng/scripts/SdkVersion-Common.ps1 deleted file mode 100644 index 9b696f11c..000000000 --- a/eng/scripts/SdkVersion-Common.ps1 +++ /dev/null @@ -1,15 +0,0 @@ -# NOTE: Update-PkgVersion and Get-PkgVersion relies on these variables and -# functions -$RepoRoot = "${PSScriptRoot}/../.." -$VersionRegex = '(#define AZURE_\w+_VERSION_MAJOR )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_MINOR )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_PATCH )(?[0-9]+)(\s+#define AZURE_\w+_VERSION_PRERELEASE )"(?[a-zA-Z0-9.]*)"'; - -function Get-VersionHppLocation ($ServiceDirectory, $PackageName) { - $versionHppLocation = Get-ChildItem package_version.hpp -Path "$RepoRoot/sdk/$ServiceDirectory/$PackageName" -Recurse - Write-Verbose "package_version.hpp location: $versionHppLocation" - - if (!$versionHppLocation) { - Write-Warning "Could not locate package_version.hpp file in sdk/$ServiceDirectory/$PackageName" - } - - return $versionHppLocation -} diff --git a/eng/scripts/Update-PkgVersion.ps1 b/eng/scripts/Update-PkgVersion.ps1 index 72343f3ea..7e88bec1b 100644 --- a/eng/scripts/Update-PkgVersion.ps1 +++ b/eng/scripts/Update-PkgVersion.ps1 @@ -29,11 +29,11 @@ Param ( [string] $ServiceDirectory, [Parameter(Mandatory=$True)] [string] $PackageName, - [string] $NewVersionString + [string] $NewVersionString, + [string] $ReleaseDate ) -. ${RepoRoot}\common\scripts\SemVer.ps1 -. ${PSScriptRoot}\SdkVersion-Common.ps1 +. (Join-Path $PSScriptRoot ".." common scripts common.ps1) # Updated Version in version file and changelog using computed or set NewVersionString function Update-Version( @@ -65,14 +65,18 @@ function Update-Version( -ServiceDirectory $ServiceDirectory ` -PackageName $PackageName ` -Unreleased $Unreleased ` - -ReplaceLatestEntryTitle $ReplaceLatestEntryTitle + -ReplaceLatestEntryTitle $ReplaceLatestEntryTitle ` + -ReleaseDate $ReleaseDate } $versionHppLocation = Get-VersionHppLocation ` -ServiceDirectory $ServiceDirectory ` -PackageName $PackageName -Write-Verbose "VERSION FILE: $versionHppLocation" +if (!$versionHppLocation) { + LogError "Failed to retrieve package version for '$ServiceDirectory/$PackageName'. No version file found." + exit 1 +} # Obtain Current Package Version if ([System.String]::IsNullOrEmpty($NewVersionString))