Skip to content

ci(Mergify): configuration update (#311) #167

ci(Mergify): configuration update (#311)

ci(Mergify): configuration update (#311) #167

name: .NET Core (build)
on:
push:
branches: [ main ]
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
env:
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
DOTNET_CLI_TELEMETRY_OPTOUT: true
DOTNET_NOLOGO: true
BUILD_RERUN_COUNT: ${{ github.run_attempt }}
steps:
- uses: actions/checkout@main
- name: Install latest .NET SDK
uses: Elskom/setup-latest-dotnet@main
with:
SDK_VERSION: '8.0.100'
RUNTIME_VERSIONS: ''
- name: Restore, Build, and pack
uses: Elskom/build-dotnet@main
with:
RESTORE: false
PACK: true
PUSH: false
- name: Clean up temp installer files.
run: |
del artifacts/packages/Release/Shipping/*.wixpdb
del artifacts/packages/Release/Shipping/*-runtime-*.*
del artifacts/packages/Release/Shipping/*-targeting-pack-*.*
shell: pwsh
- name: Upload artifacts
uses: actions/upload-artifact@main
with:
name: Shipping-${{ runner.os }}
path: artifacts/packages/Release/Shipping/*
- name: Upload binlog on failure.
uses: actions/upload-artifact@main
if: ${{ failure() }}
with:
name: msbuild.binlog
path: msbuild.binlog
create_release:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@main
- name: Download artifacts
uses: actions/download-artifact@main
with:
pattern: Shipping-*
path: artifacts/packages/Release/Shipping/
merge-multiple: true
- name: Push nuget Packages to nuget.org.
run: dotnet nuget push **/*.nupkg -s nuget.org -k ${{ secrets.NUGET_API_KEY }} --skip-duplicate
- name: Extract version from version.txt.
id: read_file
uses: guibranco/github-file-reader-action-v2@main
with:
path: "artifacts/packages/Release/Shipping/version.txt"
- uses: ncipollo/release-action@main
with:
artifacts: "artifacts/packages/Release/Shipping/*.exe,artifacts/packages/Release/Shipping/*.*pkg,artifacts/packages/Release/Shipping/*.zip,artifacts/packages/Release/Shipping/*.tar.gz"
token: ${{ secrets.GITHUB_TOKEN }}
prerelease: true
tag: ${{ steps.read_file.outputs.contents }}
commit: ${{ github.sha }}