|
7 | 7 | jobs: |
8 | 8 | publish-winget: |
9 | 9 | name: Submit to WinGet repository |
| 10 | + # winget-create is only supported on Windows |
10 | 11 | runs-on: windows-latest |
| 12 | + permissions: |
| 13 | + contents: read |
| 14 | + env: |
| 15 | + # winget-create will read the following environment variable to access the GitHub token needed for submitting a PR |
| 16 | + # See https://aka.ms/winget-create-token |
| 17 | + WINGET_CREATE_GITHUB_TOKEN: ${{ secrets.WINGET_CREATE_GITHUB_TOKEN }} |
| 18 | + # Only submit stable releases |
11 | 19 | if: ${{ !github.event.release.prerelease }} |
12 | 20 | steps: |
13 | | - # Sometimes wingetcreate may fail to sync fork automatically, so we do it manually here. |
14 | | - # Ref: https://github.com/microsoft/winget-create/issues/502 |
15 | | - - name: Sync winget-pkgs fork |
16 | | - # TODO: Replace <repo-owner> with the owner of the fork |
17 | | - run: gh repo sync <repo-owner>/winget-pkgs -b master |
18 | | - env: |
19 | | - GH_TOKEN: ${{ secrets.WINGET_GITHUB_TOKEN }} |
20 | 21 | - name: Submit package using wingetcreate |
21 | 22 | run: | |
22 | 23 | # Get installer info from release event |
23 | 24 | $assets = '${{ toJSON(github.event.release.assets) }}' | ConvertFrom-Json |
24 | 25 | $x64InstallerUrl = $assets | Where-Object -Property name -eq 'sqlcmd-amd64.msi' | Select-Object -ExpandProperty browser_download_url |
25 | | - $armInstallerUrl = $assets | Where-Object -Property name -eq 'sqlcmd-arm.msi' | Select-Object -ExpandProperty browser_download_url |
26 | 26 | $arm64InstallerUrl = $assets | Where-Object -Property name -eq 'sqlcmd-arm64.msi' | Select-Object -ExpandProperty browser_download_url |
27 | 27 | $packageVersion = (${{ toJSON(github.event.release.tag_name) }}).Trim('v') |
28 | 28 |
|
29 | 29 | # Update package using wingetcreate |
30 | | - Invoke-WebRequest https://aka.ms/wingetcreate/latest -OutFile wingetcreate.exe |
31 | | - .\wingetcreate.exe update Microsoft.Sqlcmd --version $packageVersion --urls "$x64InstallerUrl|x64" "$armInstallerUrl|arm" "$arm64InstallerUrl|arm64" --submit --token "${{ secrets.WINGET_GITHUB_TOKEN }}" |
| 30 | + curl.exe -JLO https://aka.ms/wingetcreate/latest |
| 31 | + .\wingetcreate.exe update Microsoft.Sqlcmd ` |
| 32 | + --version $packageVersion ` |
| 33 | + --urls $x64InstallerUrl $arm64InstallerUrl ` |
| 34 | + --submit |
0 commit comments