기타 사용되지 않는 코드 제거 #154
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] | |
platform: [x64] # Windows-AArch64 build machine is not available currently on GitHub (as of Aug, 2022) | |
# 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 | |
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 | |
Platform: ${{ matrix.platform }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
#token: ${{ secrets.TABLECLOTH_GITHUB_PAT }} | |
# Install the .NET Core workload | |
- name: Install .NET Core | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: 6.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 -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 }}\net6.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 | |
# Upload the MSI package: https://github.com/actions/upload-artifact | |
- name: Upload build artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: MSI Package Nightly (${{ matrix.platform }}, ${{ matrix.configuration }}) | |
path: TableCloth.msi | |
if-no-files-found: warn | |
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 }}\net6.0\win-${{ env.Platform }}\publish\Loom.exe | |
if-no-files-found: error | |
retention-days: 90 |