Skip to content

Update build-frontend-with-runtime.yml #5

Update build-frontend-with-runtime.yml

Update build-frontend-with-runtime.yml #5

name: Build EVIL front-end with runtime
on:
push:
branches: [ "master", "dev" ]
pull_request:
branches: [ "master" ]
jobs:
build:
strategy:
matrix:
runtime-identifier: [win-x64, linux-x64]
configuration: [Debug, Release]
runs-on: windows-latest
env:
Solution_Name: EVIL.sln
Test_Project_Path: VirtualMachine\Tests\Ceres.RuntimeTests\Ceres.RuntimeTests.csproj
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: 7.x
- name: Setup MSBuild.exe
uses: microsoft/setup-msbuild@v1.0.2
- name: Restore solution
run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration
env:
Configuration: ${{ matrix.configuration }}
- name: Build solution
run: dotnet build -c $env:Configuration
env:
Configuration: ${{ matrix.configuration }}
- name: Run tests
run: dotnet test --no-build -c $env:Configuration -v q # workaround for test step taking 15 freaking minutes to complete.
env:
Configuration: ${{ matrix.configuration }}
- name: Publish to directory
run: dotnet publish FrontEnd/EVIL.evil/EVIL.evil.csproj -c $env:Configuration -r $env:RuntimeIdentifier --no-self-contained -p:PublishSingleFile=true
env:
Configuration: ${{ matrix.configuration }}
RuntimeIdentifier: ${{ matrix.runtime-identifier }}
- name: Fetch front-end version
id: package_version
uses: MWin10/get-csproj-version-fork@v1.5.0
with:
file: FrontEnd/EVIL.evil/EVIL.evil.csproj
- name: Pack artifact
uses: actions/upload-artifact@v3.1.3
with:
name: evil-${{ steps.package_version.outputs.version }}_${{ matrix.runtime-identifier }}-${{ matrix.configuration }}
path: FrontEnd/EVIL.evil/bin/${{ matrix.configuration }}/net7.0/${{ matrix.runtime-identifier }}/publish
if-no-files-found: error
retention-days: 90