From 1b97e529e8877d397ebbd94fdc84ff402aaa2cbe Mon Sep 17 00:00:00 2001 From: Jack Edwards Date: Thu, 2 Jan 2025 15:31:07 -0600 Subject: [PATCH] Add MinVer and publish workflow --- .github/workflows/publish.yml | 43 +++++++++++++++++++++++++++++++++++ EasyMonads/EasyMonads.csproj | 14 +++++++++++- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..f377204 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,43 @@ +name: publish +on: + workflow_dispatch: # Allow running the workflow manually from the GitHub UI + release: + types: + - published # Run the workflow when a new GitHub release is published + +env: + DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 + DOTNET_NOLOGO: true + NuGetDirectory: ${{ github.workspace }}/nuget + +defaults: + run: + shell: pwsh + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 # Get all history to allow automatic versioning using MinVer + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 9.0.x + + - name: Restore + run: dotnet restore + + - name: Build + run: dotnet build -c Release --no-restore + + - name: Pack + run: dotnet pack -c Release --no-build --output ${{ env.NuGetDirectory }} + + - name: Push nupkg + run: dotnet nuget push ${{ env.NuGetDirectory }}/*.nupkg --api-key "${{ secrets.NUGET_APIKEY }}" --source https://api.nuget.org/v3/index.json --skip-duplicate + + - name: Push snupkg + run: dotnet nuget push ${{ env.NuGetDirectory }}/*.snupkg --api-key "${{ secrets.NUGET_APIKEY }}" --source https://api.nuget.org/v3/index.json --skip-duplicate \ No newline at end of file diff --git a/EasyMonads/EasyMonads.csproj b/EasyMonads/EasyMonads.csproj index 2f13294..71041c0 100644 --- a/EasyMonads/EasyMonads.csproj +++ b/EasyMonads/EasyMonads.csproj @@ -14,12 +14,24 @@ README.md True snupkg - 2.2.0 9 + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + minor + preview.0 + v +