| name: Update Winget Package
|
|
|
| on:
|
| workflow_dispatch:
|
| schedule:
|
| - cron: '28 5 * * *'
|
|
|
| jobs:
|
| update:
|
| name: Update Winget Package
|
| runs-on: ubuntu-latest
|
| if: github.repository_owner == 'ggml-org'
|
|
|
| steps:
|
| - name: Install cargo binstall
|
| uses: cargo-bins/cargo-binstall@268643a6b5ea099f5718ee5cd3ff7dc89a5eb49b
|
|
|
| - name: Install komac
|
| run: |
|
| cargo binstall komac@2.15.0 -y
|
|
|
| - name: Find latest release
|
| id: find_latest_release
|
| uses: actions/github-script@v8
|
| with:
|
| script: |
|
| const { data: releases } = await github.rest.repos.listReleases({
|
| owner: context.repo.owner,
|
| repo: context.repo.repo,
|
| });
|
| const { tag_name: version, assets: assets } = releases.find(({assets}) => assets.find(asset => asset.name.includes('win-vulkan')));
|
| const { browser_download_url: asset_url } = assets.find(asset => asset.name.includes('win-vulkan'));
|
| console.log("Latest release:", version);
|
| core.setOutput('VERSION', version);
|
| core.setOutput('ASSETURL', asset_url);
|
|
|
| - name: Update manifest
|
| run: |
|
| echo "Updating manifest..."
|
| komac update --version ${{ steps.find_latest_release.outputs.VERSION }} \
|
| --urls "${{ steps.find_latest_release.outputs.ASSETURL }}" \
|
| --token ${{ secrets.WINGET_GITHUB_TOKEN }} \
|
| --submit \
|
| ggml.llamacpp
|
|
|