AppMessageBoxTest 주석 처리 - Application 인스턴스 공유 문제 해결 필요 #211
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: TableCloth Build Pipeline | |
on: [push, pull_request] | |
jobs: | |
build: | |
strategy: | |
matrix: | |
configuration: [Debug, Release] | |
platform: [x64] | |
# https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on | |
runs-on: windows-2022 | |
env: | |
Solution_Name: src\TableCloth.sln | |
Hostess_Project_Path: src\Hostess\Hostess.csproj | |
ResourceBuilder_Project_Path: src\TableCloth.ResourceBuilder\TableCloth.ResourceBuilder.csproj | |
Test_Project_Path: src\TableCloth.Test\TableCloth.Test.csproj | |
Loom_Project_Path: src\Loom\Loom.csproj | |
TableCloth_Project_Directory: src\TableCloth | |
TableCloth_Project_Path: src\TableCloth\TableCloth.csproj | |
Setup_Project_Name: TableCloth.SetupBuilder | |
Setup_Project_Directory: src\TableCloth.SetupBuilder | |
Setup_Project_Path: src\TableCloth.SetupBuilder\TableCloth.SetupBuilder.csproj | |
Wap_Project_Directory: src\TableClothApp | |
Wap_Project_Path: src\TableClothApp\TableClothApp.wapproj | |
Platform: ${{ matrix.platform }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
# Install the .NET Core workload | |
- name: Install .NET Core | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: 8.0.x | |
# Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild | |
- name: Setup MSBuild.exe | |
uses: microsoft/[email protected] | |
# Setup NuGet CLI | |
- name: Setup NuGet CLI | |
uses: nuget/setup-nuget@v1 | |
with: | |
nuget-version: '5.x' | |
# Restore .NET Framework nuget packages | |
- name: Restore the application (.NET Framework Part) | |
run: nuget restore $env:Solution_Name | |
# Restore the application to populate the obj folder with RuntimeIdentifiers | |
- name: Restore the application (.NET Core Part) | |
run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration /m | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Build Hostess project separately | |
- name: Build Hostess project | |
run: msbuild $env:Hostess_Project_Path /p:Configuration=$env:Configuration /p:Platform=$env:Platform /m | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Build ResourceBuilder project separately | |
- name: Build ResourceBuilder project | |
run: msbuild $env:ResourceBuilder_Project_Path /p:Configuration=$env:Configuration /p:Platform=$env:Platform /m | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Execute all unit tests in the solution | |
- name: Execute unit tests | |
run: dotnet test $env:Test_Project_Path -r win-${{ env.Platform }} -c:$env:Configuration | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Publish TableCloth project | |
- name: Build TableCloth project | |
run: dotnet publish $env:TableCloth_Project_Path -r win-${{ env.Platform }} --self-contained -p:PublishSingleFile=true -p:PublishReadyToRun=true -c:$env:Configuration | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Build Loom project separately | |
- name: Build Loom project | |
run: dotnet publish $env:Loom_Project_Path -r win-${{ env.Platform }} --self-contained -p:PublishSingleFile=true -p:PublishReadyToRun=true -c:$env:Configuration | |
env: | |
Configuration: ${{ matrix.configuration }} | |
- name: Set path for candle and light | |
run: echo "$env:WIX_PATH\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
env: | |
WIX_PATH: ${{ env.wix }} | |
# Build setup builder project separately | |
- name: Build setup builder project | |
run: msbuild $env:Setup_Project_Path /p:Configuration=$env:Configuration /p:Platform=$env:Platform /m | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Run Setup builder | |
- name: Run setup builder | |
run: | | |
$SetupBuilderFullPath = [System.IO.Path]::GetFullPath('${{ env.Setup_Project_Directory }}\bin\${{ env.Platform }}\${{ matrix.configuration }}\${{ env.Setup_Project_Name }}.exe') | |
$InputDirPath = [System.IO.Path]::GetFullPath('${{ env.TableCloth_Project_Directory }}\bin\${{ env.Platform }}\${{ matrix.configuration }}\net8.0-windows10.0.18362.0\win-${{ env.Platform }}\publish') | |
$IconFilePath = [System.IO.Path]::GetFullPath('${{ env.TableCloth_Project_Directory }}\App.ico') | |
echo $SetupBuilderFullPath | |
echo $InputDirPath | |
echo $IconFilePath | |
dir $SetupBuilderFullPath -ErrorAction Continue | |
dir $InputDirPath -ErrorAction Continue | |
dir $IconFilePath -ErrorAction Continue | |
. $SetupBuilderFullPath $InputDirPath '--ignore--' '--ignore--' $IconFilePath | |
# Build MSIXBUNDLE package | |
- name: Run MSIXBUNDLE package | |
run: msbuild $env:Wap_Project_Path /p:Configuration=$env:Configuration /p:Platform=$env:Platform /p:UapAppxPackageBuildMode=StoreUpload /p:AppxBundle=Always /m | |
env: | |
Configuration: ${{ matrix.configuration }} | |
# Upload the MSI package: https://github.com/actions/upload-artifact | |
- name: Upload build artifacts (MSI) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: MSI Package Nightly (${{ matrix.platform }}, ${{ matrix.configuration }}) | |
path: TableCloth.msi | |
if-no-files-found: error | |
retention-days: 5 | |
# Upload the AppX packages: https://github.com/actions/upload-artifact | |
- name: Upload build artifacts (AppX Packages) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: AppX Package Nightly (${{ matrix.platform }}, ${{ matrix.configuration }}) | |
path: ${{ env.Wap_Project_Directory }}\AppPackages | |
if-no-files-found: error | |
retention-days: 5 | |
# Upload the zip package: https://github.com/actions/upload-artifact | |
- name: Upload build artifacts (Loom CLI) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Loom CLI (${{ matrix.platform }}, ${{ matrix.configuration }}) | |
path: src\Loom\bin\${{ env.Platform }}\${{ matrix.configuration }}\net8.0\win-${{ env.Platform }}\publish\Loom.exe | |
if-no-files-found: error | |
retention-days: 90 |