Skip to content

Commit

Permalink
Upload releases in a new way. By original milestone.
Browse files Browse the repository at this point in the history
  • Loading branch information
jessehouwing committed Jan 22, 2023
1 parent abfe183 commit a616b69
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 8 deletions.
21 changes: 13 additions & 8 deletions build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,22 @@ Write-Host "Release version: m$version"
$tag = "m$version"

$release = (& gh release view $tag --json url) | ConvertFrom-Json

$env:TAG = "m$version"
$env:VERSION = "$version"

echo "TAG=$env:TAG" >> $env:GITHUB_ENV
echo "VERSION=$env:VERSION" >> $env:GITHUB_ENV

. .\download.ps1
. .\generate-sxs.ps1
. .\upload-releases.ps1


if (-not $release)
{
$env:TAG = "m$version"
$env:VERSION = "$version"

echo "TAG=$env:TAG" >> $env:GITHUB_ENV
echo "VERSION=$env:VERSION" >> $env:GITHUB_ENV

. .\download.ps1
. .\generate-sxs.ps1
. .\build-extension.ps1

# & gh release create $tag -t "$tag" --target main -n """" # ((dir _download/*.zip) + (dir _sxs/*.zip))
# foreach ($zip in ((dir _download/*.zip) + (dir _sxs/*.zip)))
# {
Expand Down
33 changes: 33 additions & 0 deletions upload-releases.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[string[]] $existingReleases = & gh release list --repo jessehouwing/azure-pipelines-tasks-zips --limit 500 | Select-String "m\d+-tasks" | %{ $_.Matches.Value }
$knownAssets = @{}

foreach ($release in $existingReleases)
{
$releaseDetails = & gh release view --repo jessehouwing/azure-pipelines-tasks-zips $release --json name,tagName,assets | ConvertFrom-Json

$knownAssets["$release"] = $releaseDetails.assets
}

foreach ($taskzip in (dir _sxs/*.zip) + (dir .\_download\*.zip))
{
$taskzip.Name -match "-(?<version>\d+\.\d+\.\d+)\.zip" | Out-Null
$version = [version]$Matches.version

if ($version.Minor -lt 100)
{
continue
}

if ($knownAssets."m$($version.Minor)-tasks")
{
if ($knownAssets."m$($version.Minor)-tasks" | Where-Object { $_.name -eq $taskzip.Name })
{
continue
}
& gh release upload --repo jessehouwing/azure-pipelines-tasks-zips "m$($version.Minor)-tasks" $taskzip.FullName
}
else {
& gh release create --repo jessehouwing/azure-pipelines-tasks-zips --title "m$($version.Minor) - Tasks" --notes-file .\releasenote.template.md "m$($version.Minor)-tasks" $taskzip.FullName
$knownAssets."m$($version.Minor)-tasks" = @()
}
}

0 comments on commit a616b69

Please sign in to comment.