mirror of
https://github.com/PowerShell/PowerShell
synced 2026-06-08 12:12:50 +00:00
Only upload stable buildinfo for stable releases (#16251)
This commit is contained in:
+2
-1
@@ -5,5 +5,6 @@
|
||||
"ReleaseTag": "v7.1.5",
|
||||
"LTSReleaseTag" : ["v7.0.8"],
|
||||
"NextReleaseTag": "v7.2.0-preview.11",
|
||||
"LTSRelease": false
|
||||
"LTSRelease": false,
|
||||
"StableRelease": false
|
||||
}
|
||||
|
||||
@@ -17,12 +17,20 @@ steps:
|
||||
$dateTime = [datetime]::UtcNow
|
||||
$dateTime = [datetime]::new($dateTime.Ticks - ($dateTime.Ticks % [timespan]::TicksPerSecond), $dateTime.Kind)
|
||||
|
||||
$metadata = Get-Content ./tools/metadata.json | ConvertFrom-Json
|
||||
$stableRelease = $metadata.StableRelease
|
||||
$ltsRelease = $metadata.LTSRelease
|
||||
|
||||
$buildInfo = Get-Content $jsonFile | ConvertFrom-Json
|
||||
$buildInfo.ReleaseDate = $dateTime
|
||||
|
||||
$targetFile = "$ENV:PIPELINE_WORKSPACE/$fileName"
|
||||
ConvertTo-Json -InputObject $buildInfo | Out-File $targetFile -Encoding ascii
|
||||
|
||||
if ($stableRelease) {
|
||||
$vstsCommandCopyLTSBuildInfo = "vso[task.setvariable variable=CopyStableBuildInfo]YES"
|
||||
}
|
||||
|
||||
$vstsCommandString = "vso[task.setvariable variable=BuildInfoJsonFile]$targetFile"
|
||||
Write-Host "sending " + $vstsCommandString
|
||||
Write-Host "##$vstsCommandString"
|
||||
@@ -32,19 +40,12 @@ steps:
|
||||
|
||||
$vstsCommandCopyLTSBuildInfo = "vso[task.setvariable variable=CopyLTSBuildInfo]NO"
|
||||
|
||||
if ($fileName -eq "stable.json")
|
||||
if ($fileName -eq "stable.json" -and $ltsRelease)
|
||||
{
|
||||
$releaseTag = $buildInfo.ReleaseTag
|
||||
$version = $releaseTag -replace '^v'
|
||||
$semVersion = [System.Management.Automation.SemanticVersion] $version
|
||||
|
||||
if ($semVersion.PreReleaseLabel -eq $null -and $semVersion.Minor % 2 -eq 0 -and $semVersion.Major -ge 7)
|
||||
{
|
||||
$ltsFile = "$ENV:PIPELINE_WORKSPACE/lts.json"
|
||||
Copy-Item -Path $targetFile -Destination $ltsFile -Force
|
||||
$vstsCommandLtsJsonFile = "vso[task.setvariable variable=LtsBuildInfoJsonFile]$ltsFile"
|
||||
$vstsCommandCopyLTSBuildInfo = "vso[task.setvariable variable=CopyLTSBuildInfo]YES"
|
||||
}
|
||||
$ltsFile = "$ENV:PIPELINE_WORKSPACE/lts.json"
|
||||
Copy-Item -Path $targetFile -Destination $ltsFile -Force
|
||||
$vstsCommandLtsJsonFile = "vso[task.setvariable variable=LtsBuildInfoJsonFile]$ltsFile"
|
||||
$vstsCommandCopyLTSBuildInfo = "vso[task.setvariable variable=CopyLTSBuildInfo]YES"
|
||||
}
|
||||
|
||||
Write-Host "sending " + $vstsCommandCopyLTSBuildInfo
|
||||
@@ -65,6 +66,7 @@ steps:
|
||||
Destination: AzureBlob
|
||||
storage: '$(StorageAccount)'
|
||||
ContainerName: BuildInfo
|
||||
condition: and(succeeded(), eq(variables['CopyStableBuildInfo'], 'YES'))
|
||||
|
||||
- task: AzureFileCopy@2
|
||||
displayName: 'AzureBlob build info ''lts.json'' Copy when needed'
|
||||
|
||||
Reference in New Issue
Block a user