name: Build and Release SharpAMSIGhosting on: push: tags: - 'v*' permissions: contents: write jobs: build-and-release: runs-on: windows-latest steps: - name: Checkout code uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup MSBuild uses: microsoft/setup-msbuild@v2 with: msbuild-version: '17.0' - name: Setup NuGet uses: nuget/setup-nuget@v2 - name: Restore NuGet packages run: nuget restore SharpAMSIGhosting.sln - name: Build solution (AnyCPU) run: msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform="Any CPU" - name: Build solution (x64) run: msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform=x64 - name: Build solution (x86) run: msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform=x86 - name: Collect binaries run: | mkdir build Copy-Item -Path "SharpAMSIGhosting\bin\Release\SharpAMSIGhosting.exe" -Destination "build\SharpAMSIGhosting-AnyCPU.exe" Copy-Item -Path "SharpAMSIGhosting\bin\x64\Release\SharpAMSIGhosting.exe" -Destination "build\SharpAMSIGhosting-x64.exe" Copy-Item -Path "SharpAMSIGhosting\bin\x86\Release\SharpAMSIGhosting.exe" -Destination "build\SharpAMSIGhosting-x86.exe" - name: Release uses: softprops/action-gh-release@v2 with: files: build/* draft: false prerelease: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}