name: Build and Release on: push: branches: - master jobs: build-and-release: runs-on: windows-latest permissions: contents: write steps: - name: Checkout Code uses: actions/checkout@v4 - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' # build for all patforms - name: Publish Artifacts x64 run: dotnet publish GoToSleep/GoToSleep.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o ./publish/x64 - name: Publish Artifacts x86 run: dotnet publish GoToSleep/GoToSleep.csproj -c Release -r win-x86 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o ./publish/x86 - name: Publish Artifacts arm run: dotnet publish GoToSleep/GoToSleep.csproj -c Release -r win-arm64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o ./publish/arm64 - name: Rename Executables by Architecture run: | Get-ChildItem -Path ./publish/x64/*.exe | Rename-Item -NewName { $_.BaseName + "-x64" + $_.Extension } Get-ChildItem -Path ./publish/x86/*.exe | Rename-Item -NewName { $_.BaseName + "-x86" + $_.Extension } Get-ChildItem -Path ./publish/arm64/*.exe | Rename-Item -NewName { $_.BaseName + "-arm64" + $_.Extension } - name: Create GitHub Release uses: softprops/action-gh-release@v2 with: tag_name: v1.0.${{ github.run_number }} # Automatically increments the version number name: Release v1.0.${{ github.run_number }} draft: false prerelease: false files: ./publish/**/*.exe env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}