diff --git a/.github/workflows/dotnet-desktop.yml b/.github/workflows/dotnet-desktop.yml new file mode 100644 index 00000000..91acc601 --- /dev/null +++ b/.github/workflows/dotnet-desktop.yml @@ -0,0 +1,60 @@ +name: .NET Core Desktop + +on: + push: + paths: + - 'Plain Craft Launcher 2.sln' + - 'Plain Craft Launcher 2/**' + - '.github/workflows/**' + pull_request: + paths: + - 'Plain Craft Launcher 2.sln' + - 'Plain Craft Launcher 2/**' + - '.github/workflows/**' + +jobs: + + build: + + strategy: + matrix: + configuration: [Beta, Debug, Release, ReleaseUpdate] + + runs-on: windows-latest + + env: + Solution_Name: Plain Craft Launcher 2.sln + Wap_Project_Directory: Plain Craft Launcher 2 + Wap_Project_Path: Plain Craft Launcher 2\Plain Craft Launcher 2.vbproj + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild + - name: Setup MSBuild.exe + uses: microsoft/setup-msbuild@v2 + + # Restore the application to populate the obj folder with RuntimeIdentifiers + - name: Restore the application + run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration + env: + Configuration: ${{ matrix.configuration }} + + # Create the app package by building and packaging the Windows Application Packaging project + - name: Create the app package + run: msbuild $env:Wap_Project_Path /p:Configuration=$env:Configuration /p:UapAppxPackageBuildMode=$env:Appx_Package_Build_Mode /p:AppxBundle=$env:Appx_Bundle + env: + Appx_Bundle: Always + Appx_Bundle_Platforms: x86|x64|ARM|ARM64 + Appx_Package_Build_Mode: StoreUpload + Configuration: ${{ matrix.configuration }} + + # Upload the MSIX package: https://github.com/marketplace/actions/upload-a-build-artifact + - name: Upload build artifacts + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.configuration }} + path: ${{ env.Wap_Project_Directory }}\obj\${{ matrix.configuration }}\Plain Craft Launcher 2.exe \ No newline at end of file