Skip to content

Add ICU module implementations and enhance build process for various … #115

Add ICU module implementations and enhance build process for various …

Add ICU module implementations and enhance build process for various … #115

name: Package and Test .NET Project
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
jobs:
build-windows:
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
- name: Setup MSVC
uses: aminya/setup-cpp@v1
with:
msvc: true
cmake: true
ninja: true
- name: Restore dependencies
run: msbuild ebuild.sln /t:Restore /p:Configuration=Release /p:Platform="Any CPU"
- name: Build solution
run: dotnet build ebuild.sln --configuration Release --no-restore --property:Platform="Any CPU"
- name: Run tests
run: dotnet test ebuild.sln --configuration Release --no-build --property:Platform="Any CPU"
- name: Publish artifacts
run: dotnet publish ebuild/ebuild.csproj --configuration Release --output ./publish
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ebuild-windows
path: ./publish
build-linux:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
- name: Restore dependencies
run: dotnet restore ebuild.sln
- name: Build solution
run: dotnet build ebuild.sln --configuration Release --no-restore
- name: Run tests
run: dotnet test ebuild.sln --configuration Release --no-build
- name: Publish artifacts
run: dotnet publish ebuild/ebuild.csproj --configuration Release --output ./publish
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ebuild-linux
path: ./publish