Files
HelperLib/.gitea/workflows/nuget-publish.yml
T

39 lines
1.8 KiB
YAML
Executable File

name: Publish Nuget Packages
on:
release:
types: [published]
run-name: "Publish version v${{ github.event.release.tag_name }} to nuget"
jobs:
publish:
runs-on: ubuntu-latest
strategy:
matrix:
project:
- OmegaLeo.HelperLib
- OmegaLeo.HelperLib.Changelog
- OmegaLeo.HelperLib.Game
- OmegaLeo.HelperLib.Documentation
- OmegaLeo.HelperLib.Shared
- OmegaLeo.HelperLib.Steamworks
env:
VERSION: ${{ github.event.release.tag_name }}
PACKAGE: ./${{ matrix.project }}/bin/Release/${{ matrix.project }}.${{ github.event.release.tag_name }}.nupkg
steps:
- uses: actions/checkout@v4
- name: Setup .Net Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
- name: Create Nuget Package
run: dotnet pack "./${{ matrix.project }}/${{ matrix.project }}.csproj" -c Release /p:Version=$VERSION /p:PackageReleaseNotes="See ${{ github.server_url }}/${{ github.repository }}/releases/tag/$VERSION"
- name: Publish Nuget Package
run: dotnet nuget push "$PACKAGE" --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
- name: Publish to Gitea Packages
run: dotnet nuget push "$PACKAGE" --api-key ${{ secrets.TOKEN }} --source ${{ github.server_url }}/api/packages/${{ github.repository_owner }}/nuget/index.json --skip-duplicate
- name: Upload assets to release
run: |
curl --fail --silent --show-error \
-H "Authorization: token ${{ secrets.TOKEN }}" \
-F "attachment=@$PACKAGE" \
"${{ github.server_url }}/api/v1/repos/${{ github.repository }}/releases/${{ github.event.release.id }}/assets?name=${{ matrix.project }}.$VERSION.nupkg"