name: Build and publish server on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: build: strategy: matrix: configuration: [Release] runs-on: windows-latest # For a list of available runner types, refer to # https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 # Install the .NET Core workload - name: Install .NET 8 uses: actions/setup-dotnet@v4 with: dotnet-version: 8.0.x # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild - name: Setup MSBuild uses: microsoft/setup-msbuild@v2 - name: Restore packages run: dotnet restore - name: Publish Server Selector GUI run: dotnet publish ServerSelector.Desktop - name: Publish Server run: dotnet publish nksrv - name: Copy to output run: md ${GITHUB_WORKSPACE}/out/ && xcopy "${GITHUB_WORKSPACE}\ServerSelector.Desktop\bin\Release\net8.0\win-x64\publish\" "${GITHUB_WORKSPACE}\out\" && xcopy "${GITHUB_WORKSPACE}\nksrv\bin\Release\net8.0\win-x64\publish\" "${GITHUB_WORKSPACE}\out\" - name: Upload build artifacts uses: actions/upload-artifact@v3 with: name: MSIX Package path: ${GITHUB_WORKSPACE}/out/