Skip to content

Publish NuGet

Publish NuGet #74

Workflow file for this run

name: Publish NuGet
on:
push:
branches:
- master
paths:
- '.github/workflows/publish-nuget.yml'
- 'src/Bannerlord.ModuleManager/**.cs'
workflow_dispatch:
jobs:
publish:
name: Publish on NuGet and GPR
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- name: Setup .NET 8
uses: actions/setup-dotnet@master
with:
dotnet-version: 8.x.x
- run: dotnet pack -c Release src/Bannerlord.ModuleManager.Models -p:VersionOverride=$(git rev-list --no-merges --count master) -o ./packages
- run: dotnet pack -c Release src/Bannerlord.ModuleManager -p:VersionOverride=$(git rev-list --no-merges --count master) -o ./packages
- run: dotnet pack -c Release src/Bannerlord.ModuleManager.Source -p:VersionOverride=$(git rev-list --no-merges --count master) -o ./packages
- run: dotnet pack -c Release src/Bannerlord.ModuleManager.DependencyInjection -p:VersionOverride=$(git rev-list --no-merges --count master) -o ./packages
- name: Push to NuGet
run: dotnet nuget push "./packages/*.nupkg" -k ${{secrets.NUGET_API_KEY}} -s https://www.nuget.org --skip-duplicate
shell: pwsh
- name: Push to GPR
run: |
for f in ./packages/*.nupkg
do
curl -vX PUT -u "vslee:${{secrets.GITHUB_TOKEN}}" -F package=@$f https://nuget.pkg.github.com/BUTR/
done