Added Winget workflow
Craig Loewen committed
Sep 11, 2024 at 14:43 UTC
ced51871fbfd0ff7943886a3d585106640fd5f66
1 file changed
+27
.github/workflows/winget.yml
new
+27
@@ -0,0 +1,27 @@
1
+name: Publish to Winget
2
+
3
+on:
4
+ release:
5
+ types: [published]
6
+
7
+env:
8
+ REGEX: 'Microsoft\.WindowsTerminal(?:Preview)?_([\d.]+)_8wekyb3d8bbwe\.msixbundle$'
9
+
10
+jobs:
11
+ publish:
12
+ runs-on: windows-latest # Action can only run on Windows
13
+ steps:
14
+ - name: Publish WSL
15
+ run: |
16
+ $assets = '${{ toJSON(github.event.release.assets) }}' | ConvertFrom-Json
17
+ $wingetRelevantAsset = $assets | Where-Object { $_.name -like '*.msixbundle' } | Select-Object -First 1
18
+ $regex = [Regex]::New($env:REGEX)
19
+ $version = $regex.Match($wingetRelevantAsset.name).Groups[1].Value
20
+
21
+ Write-Output "Asset info: $assets"
22
+ Write-Output "Relevant asset: $wingetRelevantAsset"
23
+
24
+ $wingetPackage = "Microsoft.WSL"
25
+
26
+ & curl.exe -JLO https://aka.ms/wingetcreate/latest
27
+ & .\wingetcreate.exe update $wingetPackage -s -v $version -u $wingetRelevantAsset.browser_download_url -t "${{ secrets.WINGET_TOKEN }}"
\ No newline at end of file