Skip to content

Publish

Publish #4

Workflow file for this run

name: Release
on:
release:
types: [created]
jobs:
build:
permissions: write-all
name: Build ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: false
matrix:
config:
- name: Linux
os: ubuntu-20.04
runtime: linux-x64
ext: ~
- name: Windows
os: windows-latest
runtime: win-x64
ext: ".exe"
- name: MacOS
os: macos-latest
runtime: osx-x64
ext: ~
env:
proj: "Tcml.Desktop"
steps:
- uses: actions/checkout@master
with:
submodules: recursive
- name: Install DotNET
uses: actions/setup-dotnet@v3
with:
dotnet-version: "8.0.x"
- name: Publish TCML
shell: bash
run: |
dotnet publish src/${{ env.proj }}/${{ env.proj }}.csproj \
-r ${{ matrix.config.runtime }} \
-c Release \
--sc false \
--version-suffix ${{ github.event.release.tag_name }} \
-o ${{ matrix.config.name }} \
-p:Version=${{ github.event.release.tag_name }}
- name: Archive Build Files
uses: TheDoctor0/[email protected]
with:
type: 'zip'
filename: ../TCML-${{ matrix.config.runtime }}.zip
directory: ${{ matrix.config.name }}
path: ./**
- name: Upload artifacts
uses: AButler/[email protected]
with:
files: TCML-${{ matrix.config.runtime }}.zip
repo-token: ${{ secrets.GITHUB_TOKEN }}