[release/v7.5] Check GH token availability for Get-Changelog (#25328)

Co-authored-by: Justin Chung <124807742+jshigetomi@users.noreply.github.com>
Co-authored-by: Justin Chung <chungjustin@microsoft.com>
Co-authored-by: Travis Plunk <travis.plunk@microsoft.com>
This commit is contained in:
PowerShell Team Bot
2025-04-11 20:25:39 +00:00
committed by GitHub
co-authored by Justin Chung Justin Chung Travis Plunk
parent 9b41681192
commit c6bb5074a3
+31 -1
View File
@@ -151,13 +151,20 @@ function Get-ChangeLog
[Parameter(Mandatory = $true)]
[string]$ThisReleaseTag,
[Parameter(Mandatory)]
[Parameter(Mandatory = $false)]
[string]$Token,
[Parameter()]
[switch]$HasCherryPick
)
if(-not $Token) {
$Token = Get-GHDefaultAuthToken
if(-not $Token) {
throw "No GitHub Auth Token provided"
}
}
$tag_hash = git rev-parse "$LastReleaseTag^0"
$format = '%H||%P||%aN||%aE||%s'
$header = @{"Authorization"="token $Token"}
@@ -361,6 +368,29 @@ function Get-ChangeLog
Write-Output "[${version}]: https://github.com/PowerShell/PowerShell/compare/${LastReleaseTag}...${ThisReleaseTag}`n"
}
function Get-GHDefaultAuthToken {
$IsGHCLIInstalled = $false
if (Get-command -CommandType Application -Name gh -ErrorAction SilentlyContinue) {
$IsGHCLIInstalled = $true
} else {
Write-Error -Message "GitHub CLI is not installed. Please install it from https://cli.github.com/" -ErrorAction Stop
}
if ($IsGHCLIInstalled) {
try {
$Token = & gh auth token
} catch {
Write-Error -Message "Please login to GitHub CLI using 'gh auth login'"
}
}
if (-not $Token) {
$Token = Read-Host -Prompt "Enter GitHub Auth Token"
}
return $Token
}
function PrintChangeLog($clSection, $sectionTitle, [switch] $Compress) {
if ($clSection.Count -gt 0) {
"### $sectionTitle`n"