Skip to content

Commit 323d9af

Browse files
committed
update build workflow
1 parent a1648f2 commit 323d9af

1 file changed

Lines changed: 32 additions & 1 deletion

File tree

.github/workflows/build-desktop.yml

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,13 @@ jobs:
4848
- name: Build main application
4949
run: npm run build
5050

51+
- name: Fix app-builder permissions (Linux)
52+
if: runner.os == 'Linux'
53+
run: |
54+
chmod +x node_modules/app-builder-bin/linux/x64/app-builder
55+
chmod +x node_modules/app-builder-bin/linux/arm64/app-builder
56+
continue-on-error: true
57+
5158
- name: Install icon builder (Ubuntu/macOS)
5259
if: runner.os != 'Windows'
5360
run: npm install -g electron-icon-builder
@@ -72,7 +79,31 @@ jobs:
7279

7380
- name: Build Electron app (macOS)
7481
if: matrix.platform == 'mac'
75-
run: npm run electron:build:mac
82+
run: |
83+
# Retry logic for macOS DMG creation (disk busy issues)
84+
max_attempts=3
85+
attempt=0
86+
until [ $attempt -ge $max_attempts ]
87+
do
88+
attempt=$((attempt+1))
89+
echo "Build attempt $attempt of $max_attempts"
90+
91+
if npm run electron:build:mac; then
92+
echo "Build succeeded on attempt $attempt"
93+
break
94+
else
95+
if [ $attempt -lt $max_attempts ]; then
96+
echo "Build failed, waiting 10 seconds before retry..."
97+
sleep 10
98+
# Clean up any mounted disks
99+
hdiutil detach /Volumes/LiaScript* 2>/dev/null || true
100+
sleep 5
101+
else
102+
echo "Build failed after $max_attempts attempts"
103+
exit 1
104+
fi
105+
fi
106+
done
76107
env:
77108
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
78109
# For code signing (optional):

0 commit comments

Comments
 (0)