mirror of
https://github.com/eigent-ai/eigent.git
synced 2026-05-31 21:39:28 +00:00
fix too many open files
This commit is contained in:
parent
498e365a72
commit
aa6b1ea36e
1 changed files with 79 additions and 2 deletions
81
.github/workflows/build-view.yml
vendored
81
.github/workflows/build-view.yml
vendored
|
|
@ -39,6 +39,22 @@ jobs:
|
|||
run: |
|
||||
rm -rf node_modules
|
||||
rm -rf release
|
||||
rm -rf dist out build .vite
|
||||
rm -rf node_modules/.cache || true
|
||||
|
||||
# Clean build outputs on GitHub-hosted runners to avoid stale artifacts in current job
|
||||
- name: Clean build outputs (non-Windows)
|
||||
if: "!contains(matrix.os, 'self-hosted') && runner.os != 'Windows'"
|
||||
run: |
|
||||
rm -rf release dist out build .vite
|
||||
rm -rf node_modules/.cache || true
|
||||
|
||||
- name: Clean build outputs (Windows)
|
||||
if: "!contains(matrix.os, 'self-hosted') && runner.os == 'Windows'"
|
||||
shell: pwsh
|
||||
run: |
|
||||
Remove-Item -Recurse -Force release, dist, out, build, .vite -ErrorAction SilentlyContinue
|
||||
Remove-Item -Recurse -Force node_modules/.cache -ErrorAction SilentlyContinue
|
||||
|
||||
- name: Setup Node.js
|
||||
if: "!contains(matrix.os, 'self-hosted')"
|
||||
|
|
@ -92,6 +108,54 @@ jobs:
|
|||
echo "LLVM_DIR=$(brew --prefix llvm@20)/lib/cmake/llvm" >> $GITHUB_ENV
|
||||
echo "CMAKE_PREFIX_PATH=$(brew --prefix llvm@20)/lib/cmake/llvm" >> $GITHUB_ENV
|
||||
|
||||
# Prebuild separately on macOS so signing/package issues are isolated
|
||||
- name: Build Release Files (macOS prebuild)
|
||||
if: runner.os == 'macOS'
|
||||
timeout-minutes: 45
|
||||
run: |
|
||||
npm run prebuild
|
||||
env:
|
||||
VITE_BASE_URL: ${{ secrets.VITE_BASE_URL }}
|
||||
VITE_PROXY_URL: ${{ secrets.VITE_PROXY_URL }}
|
||||
VITE_STACK_PROJECT_ID: ${{ secrets.VITE_STACK_PROJECT_ID }}
|
||||
VITE_STACK_PUBLISHABLE_CLIENT_KEY: ${{ secrets.VITE_STACK_PUBLISHABLE_CLIENT_KEY }}
|
||||
VITE_STACK_SECRET_SERVER_KEY: ${{ secrets.VITE_STACK_SECRET_SERVER_KEY }}
|
||||
USE_NPM_INSTALL_BUN: 'true'
|
||||
|
||||
# Inspect payload size/file count before signing to diagnose EMFILE
|
||||
- name: Inspect app payload before signing (macOS)
|
||||
if: runner.os == 'macOS'
|
||||
run: |
|
||||
echo "==== Release size ===="
|
||||
du -sh release || true
|
||||
|
||||
echo "==== Release file count ===="
|
||||
find release | wc -l || true
|
||||
|
||||
APP_PATH=$(find release -name "*.app" -type d | head -1)
|
||||
|
||||
if [ -n "$APP_PATH" ]; then
|
||||
echo "App found: $APP_PATH"
|
||||
|
||||
echo "==== App size ===="
|
||||
du -sh "$APP_PATH" || true
|
||||
|
||||
echo "==== App file count ===="
|
||||
find "$APP_PATH" | wc -l || true
|
||||
|
||||
if [ -d "$APP_PATH/Contents/Resources/prebuilt/venv" ]; then
|
||||
echo "==== Embedded venv size ===="
|
||||
du -sh "$APP_PATH/Contents/Resources/prebuilt/venv" || true
|
||||
|
||||
echo "==== Embedded venv file count ===="
|
||||
find "$APP_PATH/Contents/Resources/prebuilt/venv" | wc -l || true
|
||||
fi
|
||||
else
|
||||
echo "❌ No .app found after prebuild"
|
||||
ls -la release/ || true
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Step for macOS builds with signing
|
||||
- name: Build Release Files (macOS with signing)
|
||||
if: runner.os == 'macOS'
|
||||
|
|
@ -104,8 +168,20 @@ jobs:
|
|||
fi
|
||||
ulimit -n 65536 2>/dev/null || ulimit -n 10240 2>/dev/null || true
|
||||
echo "File descriptor limit: $(ulimit -n) (hard: $(ulimit -Hn 2>/dev/null || echo 'N/A'))"
|
||||
npm run prebuild
|
||||
npx electron-builder --mac --${{ matrix.arch }} --publish never
|
||||
|
||||
set +e
|
||||
npx electron-builder --mac dmg --${{ matrix.arch }} --publish never
|
||||
BUILD_EXIT=$?
|
||||
|
||||
if [ $BUILD_EXIT -ne 0 ]; then
|
||||
echo "First attempt failed with exit code $BUILD_EXIT"
|
||||
echo "Retrying once in 5 seconds..."
|
||||
sleep 5
|
||||
npx electron-builder --mac dmg --${{ matrix.arch }} --publish never
|
||||
BUILD_EXIT=$?
|
||||
fi
|
||||
|
||||
exit $BUILD_EXIT
|
||||
env:
|
||||
CSC_LINK: ${{ secrets.CERT_P12 }}
|
||||
CSC_KEY_PASSWORD: ${{ secrets.CERT_PASSWORD }}
|
||||
|
|
@ -198,6 +274,7 @@ jobs:
|
|||
path: |
|
||||
release/*.AppImage
|
||||
retention-days: 5
|
||||
|
||||
merge-release:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue