auto-minor-release #459
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: auto-minor-release | |
on: | |
workflow_run: | |
workflows: ["release-minor-trigger"] | |
types: | |
- completed | |
env: | |
NUGET_API_TOKEN: ${{ secrets.LLAMA_SHARP_NUGET_KEY_REPO }} | |
jobs: | |
minor_release_to_nuget: | |
if: ${{ github.event.workflow_run.conclusion == 'success' }} | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Configure Git Credentials | |
run: | | |
git config user.name Rinne | |
git config user.email [email protected] | |
- name: Setup NuGet | |
uses: nuget/setup-nuget@v1 | |
with: | |
nuget-api-key: $NUGET_API_TOKEN | |
nuget-version: 'latest' | |
- name: Check .NET info | |
run: dotnet --info | |
- name: Install dependencies | |
run: dotnet restore | |
- name: Build solution | |
run: | | |
dotnet build ./LLama/LLamaSharp.csproj -c Release --no-restore | |
dotnet build ./LLama.SemanticKernel/LLamaSharp.SemanticKernel.csproj -c Release --no-restore | |
dotnet build ./LLama.KernelMemory/LLamaSharp.KernelMemory.csproj -c Release --no-restore | |
- name: Pack packages | |
run: | | |
git fetch --unshallow; | |
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"; | |
git fetch origin; | |
chmod +x ./.github/prepare_release.sh | |
./.github/prepare_release.sh true false | |
- name: Upload packages artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "drop-ci-packages" | |
path: './temp' | |
- name: Push LLamaSharp packages to nuget.org | |
run: dotnet nuget push ./temp/LLamaSharp*.nupkg --source https://www.nuget.org -k ${{ secrets.LLAMA_SHARP_NUGET_KEY_REPO }} --skip-duplicate | |
# Deploy the documentation to GitHub Pages | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.x | |
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV | |
- uses: actions/cache@v4 | |
with: | |
key: mkdocs-material-${{ env.cache_id }} | |
path: .cache | |
restore-keys: | | |
mkdocs-material- | |
- run: pip install mkdocs==1.4.3 mkdocs-material mike==1.1.2 setuptools | |
- run: | | |
git fetch origin gh-pages --depth=1 | |
version=$(cat ./temp/version.txt) | |
mike deploy --push --update-aliases --force $version latest | |
mike set-default --push --force latest | |
# Upload the native binaries to huggingface (experimental) | |
- name: Upload native binaries to huggingface | |
run: | | |
pip install huggingface_hub | |
llama_cpp_commit_hash=$(git submodule status llama.cpp | cut -c 2-7) | |
python .github/upload_to_hf.py --token ${{ secrets.HUGGINGFACE_TOKEN }} --revision $llama_cpp_commit_hash --folder LLama/runtimes |