HelperScripts/CleanUpGitHubReleases.ps1 (20 lines of code) (raw):

# This script is used to delete the pre-release (beta) versions after creating a new release. $Repo = "Azure/AVDSessionHostReplacer" $Confirm = $true # gh auth login $preReleases = gh release list -R $Repo --json tagName,isPrerelease --jq '.[] | select(.isPrerelease) | .tagName' if($Confirm){ Write-Host "Are you sure you want to remove the following releases?" -ForegroundColor Cyan Write-Host ($preReleases -join "`r`n") -ForegroundColor Magenta Write-Host "Press Enter delete, press any other key to cancel..." -ForegroundColor Cyan $confirmed = ([System.Console]::ReadKey($true)).Key -eq 'Enter' } else{ $confirmed = $true } if($confirmed){ $preReleases | foreach-Object { Write-PSFMessage -level Host -Message "Deleting prerelease: {0}" -StringValues $_ gh release delete $_ -R $Repo -y --cleanup-tag } }