@@ -197,23 +197,38 @@ runs:
197197 working-directory : ${{ github.action_path }}
198198 env :
199199 REQUESTED_VERSION : ${{ inputs.Version }}
200+ PREVIEW : ${{ inputs.Preview }}
200201 GITHUB_TOKEN : ${{ github.token }}
201202 run : |
202203 # Install-PowerShell
203204 Write-Host "Requested version: [$env:REQUESTED_VERSION]"
205+ Write-Host "Preview mode: [$env:PREVIEW]"
204206
205207 # Resolve 'latest' → concrete version
206208 $req = $env:REQUESTED_VERSION
207209 if ($req -and $req.Trim().ToLower() -eq 'latest') {
208- $latest = (
209- Invoke-RestMethod -Uri 'https://api.github.com/repos/PowerShell/PowerShell/releases/latest' `
210- -Headers @{
211- 'Accept' = 'application/vnd.github+json'
212- 'Authorization' = "Bearer $($env:GITHUB_TOKEN)"
213- 'X-GitHub-Api-Version' = '2022-11-28'
214- }
215- ).tag_name.TrimStart('v')
216- Write-Host "Latest stable PowerShell release detected: $latest"
210+ if ($env:PREVIEW -eq 'true') {
211+ Write-Host "Fetching latest preview release..."
212+ $releases = Invoke-RestMethod -Uri 'https://api.github.com/repos/PowerShell/PowerShell/releases' `
213+ -Headers @{
214+ 'Accept' = 'application/vnd.github+json'
215+ 'Authorization' = "Bearer $($env:GITHUB_TOKEN)"
216+ 'X-GitHub-Api-Version' = '2022-11-28'
217+ }
218+ $latestPreview = $releases | Where-Object { $_.prerelease -eq $true } | Select-Object -First 1
219+ $latest = $latestPreview.tag_name.TrimStart('v')
220+ Write-Host "Latest preview PowerShell release detected: $latest"
221+ } else {
222+ $latest = (
223+ Invoke-RestMethod -Uri 'https://api.github.com/repos/PowerShell/PowerShell/releases/latest' `
224+ -Headers @{
225+ 'Accept' = 'application/vnd.github+json'
226+ 'Authorization' = "Bearer $($env:GITHUB_TOKEN)"
227+ 'X-GitHub-Api-Version' = '2022-11-28'
228+ }
229+ ).tag_name.TrimStart('v')
230+ Write-Host "Latest stable PowerShell release detected: $latest"
231+ }
217232 $env:REQUESTED_VERSION = $latest
218233 } elseif ([string]::IsNullOrWhiteSpace($req)) {
219234 Write-Host "Error: Version input is required (or use 'latest')"
0 commit comments