11# Set the package ID based on the release info
2- $packageId = if (' ${{ !github.event.release.prerelease }}' -eq ' true' ) { ' GitHub.Copilot' } else { ' GitHub.Copilot.Prerelease' }
3-
2+ $packageId = if (' ${{ !github.event.release.prerelease }}' -eq ' true' ) { ' GitHub.Copilot' } else { ' GitHub.Copilot.Prerelease' }
3+
44# Get installer info from release event
5- $assets = ' ${{ toJSON(github.event.release.assets) }}' | ConvertFrom-Json
6- $packageVersion = (${{ toJSON(github.event.release.tag_name) } })
7-
5+ $assets = ' ${{ toJSON(github.event.release.assets) }}' | ConvertFrom-Json
6+ $packageVersion = (${{ toJSON(github.event.release.tag_name) } })
7+
88# Find the download URLs for the x64 and arm64 installers separately
99# This allows overrides to be used so that wingetcreate does not have to guess the architecture from the filename
10- $installerUrlx64 = $assets | Where-Object - Property name -like ' *win32-x64.zip' | Select-Object - ExpandProperty browser_download_url
11- $installerUrlarm64 = $assets | Where-Object - Property name -like ' *win32-arm64.zip' | Select-Object - ExpandProperty browser_download_url
12-
10+ $installerUrlx64 = $assets | Where-Object - Property name -like ' *win32-x64.zip' | Select-Object - ExpandProperty browser_download_url
11+ $installerUrlarm64 = $assets | Where-Object - Property name -like ' *win32-arm64.zip' | Select-Object - ExpandProperty browser_download_url
12+
1313# Update package using wingetcreate
14- curl.exe - JLO https:// aka.ms/ wingetcreate/ latest
15- .\wingetcreate.exe update $packageId `
16- -- version $packageVersion `
17- -- urls " $installerUrlx64 |x64" " $installerUrlarm64 |arm64" `
18- -- out manifests
14+ curl.exe - JLO https:// aka.ms/ wingetcreate/ latest
15+ .\wingetcreate.exe update $packageId `
16+ -- version $packageVersion `
17+ -- urls " $installerUrlx64 |x64" " $installerUrlarm64 |arm64" `
18+ -- out manifests
1919
2020# Add PowerShell dependency to installer manifest
21-
21+
2222$installerManifest = Get-ChildItem - Path manifests - Filter " *.installer.yaml" - Recurse | Select-Object - First 1 - ExpandProperty FullName
23- if (-not $installerManifest ) {
24- Write-Error " No installer manifest (*.installer.yaml) was found in the 'manifests' directory."
25- exit 1
26- }
27- $content = Get-Content - Path $installerManifest - Raw
28- $dependency = @"
23+ if (-not $installerManifest ) {
24+ Write-Error " No installer manifest (*.installer.yaml) was found in the 'manifests' directory."
25+ exit 1
26+ }
27+ $content = Get-Content - Path $installerManifest - Raw
28+ $dependency = @"
2929 Dependencies:
3030 PackageDependencies:
3131 - PackageIdentifier: Microsoft.PowerShell
3232 MinimumVersion: "7.0.0"
3333 "@
3434# Remove existing top-level Dependencies block (if any), then insert ours
35-
3635$content = $content -replace '(?m)^Dependencies:\r?\n([ ]+.+\r?\n)*', ''
3736 $content = $content -replace '(?m)^Installers:', "$dependency `n Installers:"
3837 Set-Content -Path $installerManifest -Value $content
3938
4039# Submit the modified manifest
41-
4240$manifestPath = Split-Path $installerManifest
4341 .\wingetcreate.exe submit $manifestPath
0 commit comments