From c5447ad67ec93f0cc07396635ac0abd83e23b181 Mon Sep 17 00:00:00 2001 From: gronod Date: Wed, 26 Aug 2026 10:04:02 +0100 Subject: [PATCH] Standardize release asset naming and trigger only on tags --- .gitea/workflows/build-linux.yml | 66 +++++++++++++-------------- .gitea/workflows/build-macos.yml | 70 +++++++++++++++-------------- .gitea/workflows/build-windows.yml | 66 ++++++++++++++------------- .github/workflows/build-linux.yml | 61 ++++++++++++------------- .github/workflows/build-macos.yml | 62 ++++++++++++------------- .github/workflows/build-windows.yml | 62 +++++++++++++------------ src-tauri/Cargo.lock | 2 +- 7 files changed, 194 insertions(+), 195 deletions(-) diff --git a/.gitea/workflows/build-linux.yml b/.gitea/workflows/build-linux.yml index d21bda0..9d5d476 100644 --- a/.gitea/workflows/build-linux.yml +++ b/.gitea/workflows/build-linux.yml @@ -2,15 +2,8 @@ name: Build Linux Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development jobs: build-linux: @@ -71,21 +64,15 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: bash run: | - VERSION=$(node -p "require('./package.json').version") - if [[ "${{ github.ref }}" == refs/tags/* ]]; then - TAG="${{ github.ref_name }}" - echo "APP_VERSION=${TAG#v}" >> $GITHUB_ENV - echo "RELEASE_TAG=${TAG}" >> $GITHUB_ENV - elif [ "${{ github.ref }}" = "refs/heads/main" ]; then - echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV - echo "RELEASE_TAG=v${VERSION}" >> $GITHUB_ENV - else - echo "APP_VERSION=${VERSION}-dev" >> $GITHUB_ENV - fi + TAG="${{ github.ref_name }}" + SHORT_SHA=$(git rev-parse --short HEAD) + echo "TAG=${TAG}" >> $GITHUB_ENV + echo "SHORT_SHA=${SHORT_SHA}" >> $GITHUB_ENV + echo "PREFIX=ICCery_${TAG}-${SHORT_SHA}-linux-x86_64" >> $GITHUB_ENV - name: Prepare platform-specific resources run: | @@ -98,32 +85,45 @@ jobs: NO_STRIP: "true" run: npm run tauri build -- -v --bundles deb,appimage - - name: Upload Debian Package - uses: actions/upload-artifact@v3 - with: - name: iccery-linux-deb-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/deb/*.deb + - name: Prepare Release Assets + shell: bash + run: | + mkdir -p release-assets - - name: Upload AppImage + # Stage Debian package + for deb in src-tauri/target/release/bundle/deb/*.deb; do + if [ -f "$deb" ]; then + cp "$deb" "release-assets/${PREFIX}.deb" + fi + done + + # Stage AppImage package + for appimage in src-tauri/target/release/bundle/appimage/*.AppImage; do + if [ -f "$appimage" ]; then + cp "$appimage" "release-assets/${PREFIX}.AppImage" + fi + done + + - name: Upload Artifacts uses: actions/upload-artifact@v3 with: - name: iccery-linux-appimage-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/appimage/*.AppImage + name: ${{ env.PREFIX }} + path: release-assets/* - name: Upload Release Assets to Gitea - if: (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main') && !cancelled() + if: !cancelled() env: GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }} SERVER_URL: ${{ github.server_url }} REPO: ${{ github.repository }} run: | set +e - echo "Finding release for tag ${RELEASE_TAG}..." - RELEASE_RESP=$(curl -s -H "Authorization: token ${GITEA_TOKEN}" "${SERVER_URL}/api/v1/repos/${REPO}/releases/tags/${RELEASE_TAG}") + echo "Finding release for tag ${TAG}..." + RELEASE_RESP=$(curl -s -H "Authorization: token ${GITEA_TOKEN}" "${SERVER_URL}/api/v1/repos/${REPO}/releases/tags/${TAG}") RELEASE_ID=$(echo "${RELEASE_RESP}" | grep -o '"id":[0-9]*' | head -n 1 | cut -d: -f2) if [ -n "${RELEASE_ID}" ]; then echo "Found Release ID: ${RELEASE_ID}. Uploading Linux assets..." - for f in src-tauri/target/release/bundle/deb/*.deb src-tauri/target/release/bundle/appimage/*.AppImage; do + for f in release-assets/*; do if [ -f "$f" ]; then FILENAME=$(basename "$f") echo "Uploading $FILENAME to release ${RELEASE_ID}..." @@ -135,5 +135,5 @@ jobs: fi done else - echo "No existing release found for tag ${RELEASE_TAG}. Skipping asset upload." + echo "No existing release found for tag ${TAG}. Skipping asset upload." fi diff --git a/.gitea/workflows/build-macos.yml b/.gitea/workflows/build-macos.yml index 400b860..24a86ee 100644 --- a/.gitea/workflows/build-macos.yml +++ b/.gitea/workflows/build-macos.yml @@ -2,15 +2,8 @@ name: Build macOS Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development jobs: build-macos: @@ -23,10 +16,12 @@ jobs: os: macos-13 target: x86_64-apple-darwin binary_dir: macos-x86_64 + arch: x86_64 - name: Apple Silicon os: macos-14 target: aarch64-apple-darwin binary_dir: macos-aarch64 + arch: aarm64 steps: - name: Checkout repository @@ -56,51 +51,58 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: bash run: | - VERSION=$(node -p "require('./package.json').version") - if [[ "${{ github.ref }}" == refs/tags/* ]]; then - TAG="${{ github.ref_name }}" - echo "APP_VERSION=${TAG#v}" >> $GITHUB_ENV - echo "RELEASE_TAG=${TAG}" >> $GITHUB_ENV - elif [ "${{ github.ref }}" = "refs/heads/main" ]; then - echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV - echo "RELEASE_TAG=v${VERSION}" >> $GITHUB_ENV - else - echo "APP_VERSION=${VERSION}-dev" >> $GITHUB_ENV - fi + TAG="${{ github.ref_name }}" + SHORT_SHA=$(git rev-parse --short HEAD) + echo "TAG=${TAG}" >> $GITHUB_ENV + echo "SHORT_SHA=${SHORT_SHA}" >> $GITHUB_ENV + echo "PREFIX=ICCery_${TAG}-${SHORT_SHA}-macos-${{ matrix.platform.arch }}" >> $GITHUB_ENV - name: Build Tauri App run: npm run tauri build - - name: Upload DMG - uses: actions/upload-artifact@v3 - with: - name: iccery-macos-${{ matrix.platform.name }}-dmg-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/dmg/*.dmg + - name: Prepare Release Assets + shell: bash + run: | + mkdir -p release-assets + + # Stage DMG package + for dmg in src-tauri/target/release/bundle/dmg/*.dmg; do + if [ -f "$dmg" ]; then + cp "$dmg" "release-assets/${PREFIX}.dmg" + fi + done - - name: Upload App Bundle + # Stage ZIP archive of .app bundle + for app in src-tauri/target/release/bundle/macos/*.app; do + if [ -d "$app" ]; then + (cd src-tauri/target/release/bundle/macos && zip -r "../../../../../release-assets/${PREFIX}.zip" "$(basename "$app")") + fi + done + + - name: Upload Artifacts uses: actions/upload-artifact@v3 with: - name: iccery-macos-${{ matrix.platform.name }}-app-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/macos/*.app + name: ${{ env.PREFIX }} + path: release-assets/* - name: Upload Release Assets to Gitea - if: (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main') && !cancelled() + if: !cancelled() env: GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }} SERVER_URL: ${{ github.server_url }} REPO: ${{ github.repository }} run: | - echo "Finding release for tag ${RELEASE_TAG}..." - RELEASE_RESP=$(curl -s -H "Authorization: token ${GITEA_TOKEN}" "${SERVER_URL}/api/v1/repos/${REPO}/releases/tags/${RELEASE_TAG}") + echo "Finding release for tag ${TAG}..." + RELEASE_RESP=$(curl -s -H "Authorization: token ${GITEA_TOKEN}" "${SERVER_URL}/api/v1/repos/${REPO}/releases/tags/${TAG}") RELEASE_ID=$(echo "${RELEASE_RESP}" | grep -o '"id":[0-9]*' | head -n 1 | cut -d: -f2) if [ -n "${RELEASE_ID}" ]; then echo "Found Release ID: ${RELEASE_ID}. Uploading macOS assets..." - for f in src-tauri/target/release/bundle/dmg/*.dmg src-tauri/target/release/bundle/macos/*.app; do - if [ -e "$f" ]; then + for f in release-assets/*; do + if [ -f "$f" ]; then FILENAME=$(basename "$f") echo "Uploading $FILENAME to release ${RELEASE_ID}..." curl -s -X POST \ @@ -111,5 +113,5 @@ jobs: fi done else - echo "No existing release found for tag ${RELEASE_TAG}. Skipping asset upload." + echo "No existing release found for tag ${TAG}. Skipping asset upload." fi diff --git a/.gitea/workflows/build-windows.yml b/.gitea/workflows/build-windows.yml index 144a175..6c588c6 100644 --- a/.gitea/workflows/build-windows.yml +++ b/.gitea/workflows/build-windows.yml @@ -2,15 +2,8 @@ name: Build Windows Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development jobs: build-windows: @@ -55,21 +48,15 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: powershell run: | - $VERSION = node -p "require('./package.json').version" - if ($env:GITHUB_REF -like "refs/tags/*") { - $TAG = $env:GITHUB_REF_NAME - "APP_VERSION=$($TAG.TrimStart('v'))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - "RELEASE_TAG=$TAG" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } elseif ($env:GITHUB_REF -eq "refs/heads/main") { - "APP_VERSION=$VERSION" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - "RELEASE_TAG=v$VERSION" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } else { - "APP_VERSION=$VERSION-dev" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } + $TAG = $env:GITHUB_REF_NAME + $SHORT_SHA = (git rev-parse --short HEAD).Trim() + "TAG=$TAG" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + "SHORT_SHA=$SHORT_SHA" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + "PREFIX=ICCery_${TAG}-${SHORT_SHA}-windows-x86_64" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - name: Prepare platform-specific resources shell: powershell @@ -82,28 +69,41 @@ jobs: - name: Build Tauri App run: npm run tauri build -- -v - - name: Upload MSI Installer - uses: actions/upload-artifact@v3 - with: - name: iccery-windows-msi-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/msi/*.msi + - name: Prepare Release Assets + shell: powershell + run: | + New-Item -ItemType Directory -Force -Path "release-assets" + $PREFIX = $env:PREFIX - - name: Upload NSIS Installer + # Stage MSI installer + $msiFiles = Get-ChildItem -Path "src-tauri\target\release\bundle\msi\*.msi" -ErrorAction SilentlyContinue + foreach ($file in $msiFiles) { + Copy-Item -Path $file.FullName -Destination "release-assets\$PREFIX.msi" + } + + # Stage NSIS installer + $nsisFiles = Get-ChildItem -Path "src-tauri\target\release\bundle\nsis\*.exe" -ErrorAction SilentlyContinue + foreach ($file in $nsisFiles) { + Copy-Item -Path $file.FullName -Destination "release-assets\$PREFIX.exe" + # Also create a zip archive of the installer + Compress-Archive -Path $file.FullName -DestinationPath "release-assets\$PREFIX.zip" -Force + } + + - name: Upload Artifacts uses: actions/upload-artifact@v3 with: - name: iccery-windows-exe-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/nsis/*.exe + name: ${{ env.PREFIX }} + path: release-assets/* - name: Upload Release Assets to Gitea - if: (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main') && !cancelled() + if: !cancelled() shell: powershell env: GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }} SERVER_URL: ${{ github.server_url }} REPO: ${{ github.repository }} run: | - $TAG = $env:RELEASE_TAG - if (-not $TAG) { $TAG = "v$env:APP_VERSION" } + $TAG = $env:TAG Write-Host "Finding release for tag $TAG..." $headers = @{ "Authorization" = "token $env:GITEA_TOKEN" } try { @@ -111,7 +111,7 @@ jobs: $releaseId = $release.id if ($releaseId) { Write-Host "Found Release ID: $releaseId. Uploading Windows assets..." - $files = Get-ChildItem -Path "src-tauri\target\release\bundle\msi\*.msi", "src-tauri\target\release\bundle\nsis\*.exe" -ErrorAction SilentlyContinue + $files = Get-ChildItem -Path "release-assets\*" -ErrorAction SilentlyContinue foreach ($file in $files) { Write-Host "Uploading $($file.Name)..." curl.exe -s -X POST ` @@ -120,6 +120,8 @@ jobs: -F "attachment=@$($file.FullName)" ` "$env:SERVER_URL/api/v1/repos/$env:REPO/releases/$releaseId/assets?name=$($file.Name)" } + } else { + Write-Host "No existing release found for tag $TAG. Skipping asset upload." } } catch { Write-Host "Skipping release asset upload: $_" diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml index b44fd5c..c89933b 100644 --- a/.github/workflows/build-linux.yml +++ b/.github/workflows/build-linux.yml @@ -2,15 +2,8 @@ name: Build Linux Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development permissions: contents: write @@ -74,21 +67,15 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: bash run: | - VERSION=$(node -p "require('./package.json').version") - if [[ "${{ github.ref }}" == refs/tags/* ]]; then - TAG="${{ github.ref_name }}" - echo "APP_VERSION=${TAG#v}" >> $GITHUB_ENV - echo "RELEASE_TAG=${TAG}" >> $GITHUB_ENV - elif [ "${{ github.ref }}" = "refs/heads/main" ]; then - echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV - echo "RELEASE_TAG=v${VERSION}" >> $GITHUB_ENV - else - echo "APP_VERSION=${VERSION}-dev" >> $GITHUB_ENV - fi + TAG="${{ github.ref_name }}" + SHORT_SHA=$(git rev-parse --short HEAD) + echo "TAG=${TAG}" >> $GITHUB_ENV + echo "SHORT_SHA=${SHORT_SHA}" >> $GITHUB_ENV + echo "PREFIX=ICCery_${TAG}-${SHORT_SHA}-linux-x86_64" >> $GITHUB_ENV - name: Prepare platform-specific resources run: | @@ -101,24 +88,34 @@ jobs: NO_STRIP: "true" run: npm run tauri build -- -v --bundles deb,appimage - - name: Upload Debian Package - uses: actions/upload-artifact@v4 - with: - name: iccery-linux-deb-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/deb/*.deb + - name: Prepare Release Assets + shell: bash + run: | + mkdir -p release-assets - - name: Upload AppImage + # Stage Debian package + for deb in src-tauri/target/release/bundle/deb/*.deb; do + if [ -f "$deb" ]; then + cp "$deb" "release-assets/${PREFIX}.deb" + fi + done + + # Stage AppImage package + for appimage in src-tauri/target/release/bundle/appimage/*.AppImage; do + if [ -f "$appimage" ]; then + cp "$appimage" "release-assets/${PREFIX}.AppImage" + fi + done + + - name: Upload Artifacts uses: actions/upload-artifact@v4 with: - name: iccery-linux-appimage-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/appimage/*.AppImage + name: ${{ env.PREFIX }} + path: release-assets/* - name: Release on GitHub - if: startsWith(github.ref, 'refs/tags/v') uses: softprops/action-gh-release@v2 with: - files: | - src-tauri/target/release/bundle/deb/*.deb - src-tauri/target/release/bundle/appimage/*.AppImage + files: release-assets/* env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/build-macos.yml b/.github/workflows/build-macos.yml index 0d15184..89d1294 100644 --- a/.github/workflows/build-macos.yml +++ b/.github/workflows/build-macos.yml @@ -2,15 +2,8 @@ name: Build macOS Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development permissions: contents: write @@ -26,10 +19,12 @@ jobs: os: macos-15-intel target: x86_64-apple-darwin binary_dir: macos-x86_64 + arch: x86_64 - name: Apple Silicon os: macos-15 target: aarch64-apple-darwin binary_dir: macos-aarch64 + arch: aarm64 steps: - name: Checkout repository @@ -59,42 +54,47 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: bash run: | - VERSION=$(node -p "require('./package.json').version") - if [[ "${{ github.ref }}" == refs/tags/* ]]; then - TAG="${{ github.ref_name }}" - echo "APP_VERSION=${TAG#v}" >> $GITHUB_ENV - echo "RELEASE_TAG=${TAG}" >> $GITHUB_ENV - elif [ "${{ github.ref }}" = "refs/heads/main" ]; then - echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV - echo "RELEASE_TAG=v${VERSION}" >> $GITHUB_ENV - else - echo "APP_VERSION=${VERSION}-dev" >> $GITHUB_ENV - fi + TAG="${{ github.ref_name }}" + SHORT_SHA=$(git rev-parse --short HEAD) + echo "TAG=${TAG}" >> $GITHUB_ENV + echo "SHORT_SHA=${SHORT_SHA}" >> $GITHUB_ENV + echo "PREFIX=ICCery_${TAG}-${SHORT_SHA}-macos-${{ matrix.platform.arch }}" >> $GITHUB_ENV - name: Build Tauri App run: npm run tauri build - - name: Upload DMG - uses: actions/upload-artifact@v4 - with: - name: iccery-macos-${{ matrix.platform.name }}-dmg-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/dmg/*.dmg + - name: Prepare Release Assets + shell: bash + run: | + mkdir -p release-assets + + # Stage DMG package + for dmg in src-tauri/target/release/bundle/dmg/*.dmg; do + if [ -f "$dmg" ]; then + cp "$dmg" "release-assets/${PREFIX}.dmg" + fi + done - - name: Upload App Bundle + # Stage ZIP archive of .app bundle + for app in src-tauri/target/release/bundle/macos/*.app; do + if [ -d "$app" ]; then + (cd src-tauri/target/release/bundle/macos && zip -r "../../../../../release-assets/${PREFIX}.zip" "$(basename "$app")") + fi + done + + - name: Upload Artifacts uses: actions/upload-artifact@v4 with: - name: iccery-macos-${{ matrix.platform.name }}-app-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/macos/*.app + name: ${{ env.PREFIX }} + path: release-assets/* - name: Release on GitHub - if: startsWith(github.ref, 'refs/tags/v') uses: softprops/action-gh-release@v2 with: - files: | - src-tauri/target/release/bundle/dmg/*.dmg + files: release-assets/* env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/build-windows.yml b/.github/workflows/build-windows.yml index 349d442..2a07c67 100644 --- a/.github/workflows/build-windows.yml +++ b/.github/workflows/build-windows.yml @@ -2,15 +2,8 @@ name: Build Windows Packages on: push: - branches: - - main - - development tags: - 'v*' - pull_request: - branches: - - main - - development permissions: contents: write @@ -58,21 +51,15 @@ jobs: - name: Install Node dependencies run: npm ci - - name: Get App Version - id: get_version + - name: Set Release Environment + id: set_env shell: powershell run: | - $VERSION = node -p "require('./package.json').version" - if ($env:GITHUB_REF -like "refs/tags/*") { - $TAG = $env:GITHUB_REF_NAME - "APP_VERSION=$($TAG.TrimStart('v'))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - "RELEASE_TAG=$TAG" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } elseif ($env:GITHUB_REF -eq "refs/heads/main") { - "APP_VERSION=$VERSION" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - "RELEASE_TAG=v$VERSION" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } else { - "APP_VERSION=$VERSION-dev" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - } + $TAG = $env:GITHUB_REF_NAME + $SHORT_SHA = (git rev-parse --short HEAD).Trim() + "TAG=$TAG" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + "SHORT_SHA=$SHORT_SHA" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + "PREFIX=ICCery_${TAG}-${SHORT_SHA}-windows-x86_64" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - name: Prepare platform-specific resources shell: powershell @@ -85,24 +72,35 @@ jobs: - name: Build Tauri App run: npm run tauri build -- -v - - name: Upload MSI Installer - uses: actions/upload-artifact@v4 - with: - name: iccery-windows-msi-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/msi/*.msi + - name: Prepare Release Assets + shell: powershell + run: | + New-Item -ItemType Directory -Force -Path "release-assets" + $PREFIX = $env:PREFIX - - name: Upload NSIS Installer + # Stage MSI installer + $msiFiles = Get-ChildItem -Path "src-tauri\target\release\bundle\msi\*.msi" -ErrorAction SilentlyContinue + foreach ($file in $msiFiles) { + Copy-Item -Path $file.FullName -Destination "release-assets\$PREFIX.msi" + } + + # Stage NSIS installer + $nsisFiles = Get-ChildItem -Path "src-tauri\target\release\bundle\nsis\*.exe" -ErrorAction SilentlyContinue + foreach ($file in $nsisFiles) { + Copy-Item -Path $file.FullName -Destination "release-assets\$PREFIX.exe" + # Also create a zip archive of the installer + Compress-Archive -Path $file.FullName -DestinationPath "release-assets\$PREFIX.zip" -Force + } + + - name: Upload Artifacts uses: actions/upload-artifact@v4 with: - name: iccery-windows-exe-${{ env.APP_VERSION }} - path: src-tauri/target/release/bundle/nsis/*.exe + name: ${{ env.PREFIX }} + path: release-assets/* - name: Release on GitHub - if: startsWith(github.ref, 'refs/tags/v') uses: softprops/action-gh-release@v2 with: - files: | - src-tauri/target/release/bundle/msi/*.msi - src-tauri/target/release/bundle/nsis/*.exe + files: release-assets/* env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 7f5655a..9d4d95d 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -1387,7 +1387,7 @@ dependencies = [ [[package]] name = "iccery" -version = "0.3.0" +version = "0.3.1" dependencies = [ "base64 0.22.1", "image", -- 2.39.5