fix: update build workflow to ensure proper file copying and directory creation
Some checks failed
Build / build-windows (push) Successful in 5m49s
Build / build-linux (push) Successful in 10m29s
Build / build-android (push) Successful in 12m13s
Build / create-release (push) Failing after 11s

This commit is contained in:
2026-02-19 19:11:03 +11:00
parent 87bb7347e3
commit 41159d206c

View File

@@ -17,6 +17,8 @@ env:
jobs:
build-windows:
runs-on: windows
env:
CARGO_TARGET_DIR: C:\cargo-cache\cinny-desktop
steps:
- name: Checkout repository
@@ -53,14 +55,17 @@ jobs:
- name: Build Tauri app
run: npm run tauri build
- name: Rename MSI files
- name: Copy and rename MSI files
shell: powershell
run: |
$msi = Get-ChildItem "src-tauri/target/release/bundle/msi/*.msi" -Exclude "Cinny-*" | Select-Object -First 1
# Ensure output dir exists in workspace
New-Item -ItemType Directory -Force -Path "src-tauri/target/release/bundle/msi" | Out-Null
# Copy from persistent cache location
$msi = Get-ChildItem "$env:CARGO_TARGET_DIR/release/bundle/msi/*.msi" -Exclude "Cinny-*" | Select-Object -First 1
Copy-Item $msi.FullName "src-tauri/target/release/bundle/msi/Cinny-Windows-x64.msi"
$msiZip = Get-ChildItem "src-tauri/target/release/bundle/msi/*.msi.zip" -Exclude "Cinny-*" | Select-Object -First 1
$msiZip = Get-ChildItem "$env:CARGO_TARGET_DIR/release/bundle/msi/*.msi.zip" -Exclude "Cinny-*" | Select-Object -First 1
if ($msiZip) { Copy-Item $msiZip.FullName "src-tauri/target/release/bundle/msi/Cinny-Windows-x64.msi.zip" }
$msiZipSig = Get-ChildItem "src-tauri/target/release/bundle/msi/*.msi.zip.sig" -Exclude "Cinny-*" | Select-Object -First 1
$msiZipSig = Get-ChildItem "$env:CARGO_TARGET_DIR/release/bundle/msi/*.msi.zip.sig" -Exclude "Cinny-*" | Select-Object -First 1
if ($msiZipSig) { Copy-Item $msiZipSig.FullName "src-tauri/target/release/bundle/msi/Cinny-Windows-x64.msi.zip.sig" }
Get-ChildItem "src-tauri/target/release/bundle/msi/"
@@ -86,6 +91,8 @@ jobs:
build-linux:
runs-on: ubuntu-latest
env:
CARGO_TARGET_DIR: /home/runner/cargo-cache/cinny-desktop
steps:
- name: Checkout repository
@@ -121,15 +128,19 @@ jobs:
- name: Build Tauri app
run: npm run tauri build
- name: Rename Linux packages
- name: Copy and rename Linux packages
run: |
# Find and copy each file individually to avoid glob issues
find src-tauri/target/release/bundle/appimage -name "*.AppImage" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/appimage/Cinny-Linux-x64.AppImage
find src-tauri/target/release/bundle/deb -name "*.deb" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/deb/Cinny-Linux-x64.deb
find src-tauri/target/release/bundle/rpm -name "*.rpm" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/rpm/Cinny-Linux-x64.rpm
# Create workspace output directories
mkdir -p src-tauri/target/release/bundle/appimage
mkdir -p src-tauri/target/release/bundle/deb
mkdir -p src-tauri/target/release/bundle/rpm
# Copy from persistent cache location
find $CARGO_TARGET_DIR/release/bundle/appimage -name "*.AppImage" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/appimage/Cinny-Linux-x64.AppImage
find $CARGO_TARGET_DIR/release/bundle/deb -name "*.deb" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/deb/Cinny-Linux-x64.deb
find $CARGO_TARGET_DIR/release/bundle/rpm -name "*.rpm" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/rpm/Cinny-Linux-x64.rpm
# Copy signature file for updater if it exists
if ls src-tauri/target/release/bundle/appimage/*.AppImage.sig 1> /dev/null 2>&1; then
find src-tauri/target/release/bundle/appimage -name "*.AppImage.sig" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/appimage/Cinny-Linux-x64.AppImage.sig
if ls $CARGO_TARGET_DIR/release/bundle/appimage/*.AppImage.sig 1> /dev/null 2>&1; then
find $CARGO_TARGET_DIR/release/bundle/appimage -name "*.AppImage.sig" -not -name "Cinny-Linux*" | head -1 | xargs -I {} cp {} src-tauri/target/release/bundle/appimage/Cinny-Linux-x64.AppImage.sig
fi
# List what we have
ls -la src-tauri/target/release/bundle/appimage/
@@ -163,6 +174,8 @@ jobs:
build-android:
runs-on: windows
env:
CARGO_TARGET_DIR: C:\cargo-cache\cinny-desktop-android
steps:
- name: Checkout repository
@@ -209,9 +222,13 @@ jobs:
- name: Build Android APK
shell: powershell
timeout-minutes: 30
run: |
$env:PATH = "$env:USERPROFILE\.cargo\bin;$env:PATH"
npm run tauri android build -- --ci --target aarch64
# Kill any lingering processes that might hang
Stop-Process -Name "java" -Force -ErrorAction SilentlyContinue
Stop-Process -Name "gradle" -Force -ErrorAction SilentlyContinue
env:
ANDROID_HOME: ${{ env.ANDROID_HOME }}
NDK_HOME: ${{ env.ANDROID_HOME }}/ndk/25.2.9519653