diff --git a/.github/workflows/generate-windows-installer-debug.yml b/.github/workflows/generate-windows-packages-debug.yml similarity index 55% rename from .github/workflows/generate-windows-installer-debug.yml rename to .github/workflows/generate-windows-packages-debug.yml index 029c57b0..1cc37710 100644 --- a/.github/workflows/generate-windows-installer-debug.yml +++ b/.github/workflows/generate-windows-packages-debug.yml @@ -1,4 +1,4 @@ -name: Generate Windows Installer (Debug) +name: Generate Windows Packages (Debug) on: release: @@ -9,7 +9,7 @@ permissions: jobs: generate-windows-installer: - name: Generate Windows Installer (Debug) + name: Generate Windows Packages (Debug) runs-on: windows-latest steps: @@ -33,6 +33,7 @@ jobs: - name: Run PyInstaller to create binaries run: | pyinstaller.exe --noconfirm turing-system-monitor-debug.spec + "${{github.event.release.tag_name}}-debug" | Out-File ".\dist\turing-system-monitor\version.txt" - name: Create InnoSetup installer from generated binaries uses: Minionguyjpro/Inno-Setup-Action@v1.2.5 @@ -40,15 +41,33 @@ jobs: path: tools/windows-installer/turing-system-monitor.iss options: /O+ + - name: Create portable zip archive from generated binaries + run: | + Remove-Item -r ".\dist\turing-system-monitor\res\themes\--Theme examples\" + 7z a -tzip turing-system-monitor-${{github.event.release.tag_name}}-portable-debug.zip ".\dist\turing-system-monitor" + - name: '📦 Archive Windows installer' uses: actions/upload-artifact@v4 with: - name: turing-system-monitor_${{github.event.release.tag_name}} + name: turing-system-monitor-${{github.event.release.tag_name}}-debug path: tools\windows-installer\Output\turing-system-monitor-${{github.event.release.tag_name}}-debug.exe if-no-files-found: error + - name: '📦 Archive Windows portable archive' + uses: actions/upload-artifact@v4 + with: + name: turing-system-monitor-${{github.event.release.tag_name}}-portable-debug + path: turing-system-monitor-${{github.event.release.tag_name}}-portable-debug.zip + if-no-files-found: error + - name: '📩 Publish Windows installer to Release' run: | gh release upload ${{github.event.release.tag_name}} tools\windows-installer\Output\turing-system-monitor-${{github.event.release.tag_name}}-debug.exe env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: '📩 Publish Windows portable zip to Release' + run: | + gh release upload ${{github.event.release.tag_name}} turing-system-monitor-${{github.event.release.tag_name}}-portable-debug.zip + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/generate-windows-installer.yml b/.github/workflows/generate-windows-packages.yml similarity index 56% rename from .github/workflows/generate-windows-installer.yml rename to .github/workflows/generate-windows-packages.yml index 5b40b675..2cb4dc1a 100644 --- a/.github/workflows/generate-windows-installer.yml +++ b/.github/workflows/generate-windows-packages.yml @@ -1,4 +1,4 @@ -name: Generate Windows Installer +name: Generate Windows Packages on: release: @@ -9,7 +9,7 @@ permissions: jobs: generate-windows-installer: - name: Generate Windows Installer + name: Generate Windows Packages runs-on: windows-latest steps: @@ -33,6 +33,7 @@ jobs: - name: Run PyInstaller to create binaries run: | pyinstaller.exe --noconfirm turing-system-monitor.spec + "${{github.event.release.tag_name}}" | Out-File ".\dist\turing-system-monitor\version.txt" - name: Create InnoSetup installer from generated binaries uses: Minionguyjpro/Inno-Setup-Action@v1.2.5 @@ -40,15 +41,33 @@ jobs: path: tools/windows-installer/turing-system-monitor.iss options: /O+ + - name: Create portable zip archive from generated binaries + run: | + Remove-Item -r ".\dist\turing-system-monitor\res\themes\--Theme examples\" + 7z a -tzip turing-system-monitor-${{github.event.release.tag_name}}-portable.zip ".\dist\turing-system-monitor" + - name: '📦 Archive Windows installer' uses: actions/upload-artifact@v4 with: - name: turing-system-monitor_${{github.event.release.tag_name}} + name: turing-system-monitor-${{github.event.release.tag_name}} path: tools\windows-installer\Output\turing-system-monitor-${{github.event.release.tag_name}}.exe if-no-files-found: error + - name: '📦 Archive Windows portable archive' + uses: actions/upload-artifact@v4 + with: + name: turing-system-monitor-${{github.event.release.tag_name}}-portable + path: turing-system-monitor-${{github.event.release.tag_name}}-portable.zip + if-no-files-found: error + - name: '📩 Publish Windows installer to Release' run: | gh release upload ${{github.event.release.tag_name}} tools\windows-installer\Output\turing-system-monitor-${{github.event.release.tag_name}}.exe env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: '📩 Publish Windows portable zip to Release' + run: | + gh release upload ${{github.event.release.tag_name}} turing-system-monitor-${{github.event.release.tag_name}}-portable.zip + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}