Create dotnet-desktop.yml

This commit is contained in:
ApfelTeeSaft
2024-11-05 09:04:42 +01:00
committed by GitHub
parent 98a765bf49
commit 0998e8769b
+81
View File
@@ -0,0 +1,81 @@
name: Publish MultiInject
on:
push:
branches: [ "main" ]
jobs:
build-and-release:
runs-on: ubuntu-latest
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
env:
VERSION: ${{ github.event.ref_name }} # Set the version tag as the release version
APP_NAME: "MultiInject" # Application name
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.0' # Specify .NET SDK version
- name: Build the application
run: dotnet publish MultiInject.sln -c Release -o output
- name: Upload build artifact
if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.os }}-build
path: output
- name: Create GitHub Release
id: create_release
if: github.ref_type == 'tag'
uses: actions/create-release@v1
with:
tag_name: ${{ env.VERSION }}
release_name: Release ${{ env.VERSION }}
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload to Release - Linux
if: matrix.os == 'ubuntu-latest'
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: output
asset_name: MultiInject-linux-${{ env.VERSION }}.zip
asset_content_type: application/zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload to Release - Windows
if: matrix.os == 'windows-latest'
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: output
asset_name: MultiInject-win-${{ env.VERSION }}.zip
asset_content_type: application/zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload to Release - macOS
if: matrix.os == 'macos-latest'
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: output
asset_name: MultiInject-mac-${{ env.VERSION }}.zip
asset_content_type: application/zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}