chore: update build yml
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
CodeQL Advanced / Analyze (python) (push) Waiting to run

This commit is contained in:
Wendong-Fan 2026-01-21 21:27:32 +08:00
parent 6683a54abb
commit 51529f6ed3
4 changed files with 14 additions and 189 deletions

View file

@ -14,78 +14,14 @@ jobs:
strategy:
matrix:
include:
- os: macos-latest
- os: warp-macos-15-arm64-12x
arch: arm64
- os: macos-15-intel
arch: x64
- os: windows-latest
arch: x64
- os: ubuntu-latest
arch: x64
steps:
- name: Free Disk Space (macOS)
if: runner.os == 'macOS'
run: |
echo "Disk space before cleanup:"
df -h
# Remove Xcode completely (not needed for Electron builds) - saves ~15GB
sudo rm -rf /Applications/Xcode.app || true
sudo rm -rf /Applications/Xcode_*.app || true
# Note: Keep /Library/Developer/CommandLineTools as codesign needs it
# Remove iOS simulators
sudo rm -rf ~/Library/Developer/CoreSimulator || true
# Remove all Xcode Developer files
sudo rm -rf ~/Library/Developer/Xcode || true
sudo rm -rf /Library/Developer/Xcode || true
# Remove provisioning profiles
sudo rm -rf ~/Library/MobileDevice/Provisioning\ Profiles || true
# Remove Android SDK if present
sudo rm -rf ~/Library/Android/sdk || true
sudo rm -rf /usr/local/lib/android || true
# Remove .NET
sudo rm -rf /usr/local/share/dotnet || true
# Remove Go
sudo rm -rf /usr/local/go || true
sudo rm -rf ~/go || true
# Remove Ruby
sudo rm -rf /usr/local/lib/ruby || true
sudo rm -rf ~/.gem || true
# Remove Swift toolchains
sudo rm -rf /Library/Developer/Toolchains || true
# Remove Homebrew cache
rm -rf ~/Library/Caches/Homebrew/* || true
brew cleanup --prune=all 2>/dev/null || true
# Remove npm cache
npm cache clean --force || true
# Remove pip cache
pip cache purge 2>/dev/null || true
# Note: Don't delete ~/Library/Caches/* as subsequent steps may need it
# Additional cleanup for more disk space
# Remove hosted tool cache (can be several GB)
sudo rm -rf /Users/runner/hostedtoolcache || true
sudo rm -rf /opt/hostedtoolcache || true
# Remove browsers (not needed for Electron builds)
sudo rm -rf "/Applications/Google Chrome.app" || true
sudo rm -rf "/Applications/Firefox.app" || true
sudo rm -rf "/Applications/Safari Technology Preview.app" || true
# Remove PowerShell
sudo rm -rf /usr/local/microsoft/powershell || true
sudo rm -rf /usr/local/share/powershell || true
# Remove more from /usr/local
sudo rm -rf /usr/local/aws-cli || true
sudo rm -rf /usr/local/julia* || true
sudo rm -rf /usr/local/miniconda || true
# Remove unused large directories
sudo rm -rf /usr/share/swift || true
sudo rm -rf /usr/share/miniconda || true
# Remove Docker images if present
docker system prune -af 2>/dev/null || true
echo "Disk space after cleanup:"
df -h
- name: Checkout Code
uses: actions/checkout@v4
@ -117,16 +53,6 @@ jobs:
sudo apt-get update
sudo apt-get install -y libfuse2
# Verify disk space before build
- name: Check Disk Space Before Build (macOS)
if: runner.os == 'macOS'
run: |
echo "Disk space available before build:"
df -h
echo ""
echo "Largest directories in home:"
du -sh ~/* 2>/dev/null | sort -rh | head -10 || true
# Step for macOS builds with signing
- name: Build Release Files (macOS with signing)
if: runner.os == 'macOS'
@ -204,19 +130,12 @@ jobs:
steps:
- name: Create directories
run: |
mkdir -p release/mac-x64 release/mac-arm64 release/win-x64 release/linux-x64
# Download all artifacts with correct names
- name: Download mac-x64 artifact
uses: actions/download-artifact@v7
with:
name: release-macos-15-intel-x64
path: temp-mac-x64
mkdir -p release/mac-arm64 release/win-x64 release/linux-x64
- name: Download mac-arm64 artifact
uses: actions/download-artifact@v7
with:
name: release-macos-latest-arm64
name: release-warp-macos-15-arm64-6x-arm64
path: temp-mac-arm64
- name: Download win-x64 artifact
@ -235,13 +154,6 @@ jobs:
- name: Move files to clean folders
shell: bash
run: |
# mac-x64 - only move dmg files
if [ -d "temp-mac-x64/release" ]; then
find temp-mac-x64/release -name "*.dmg" -exec mv {} release/mac-x64/ \; || true
else
find temp-mac-x64 -name "*.dmg" -exec mv {} release/mac-x64/ \; || true
fi
# mac-arm64 - only move dmg files
if [ -d "temp-mac-arm64/release" ]; then
find temp-mac-arm64/release -name "*.dmg" -exec mv {} release/mac-arm64/ \; || true

View file

@ -25,78 +25,14 @@ jobs:
strategy:
matrix:
include:
- os: macos-latest
- os: warp-macos-15-arm64-12x
arch: arm64
- os: macos-15-intel
arch: x64
- os: windows-latest
arch: x64
- os: ubuntu-latest
arch: x64
steps:
- name: Free Disk Space (macOS)
if: runner.os == 'macOS'
run: |
echo "Disk space before cleanup:"
df -h
# Remove Xcode completely (not needed for Electron builds) - saves ~15GB
sudo rm -rf /Applications/Xcode.app || true
sudo rm -rf /Applications/Xcode_*.app || true
# Note: Keep /Library/Developer/CommandLineTools as codesign needs it
# Remove iOS simulators
sudo rm -rf ~/Library/Developer/CoreSimulator || true
# Remove all Xcode Developer files
sudo rm -rf ~/Library/Developer/Xcode || true
sudo rm -rf /Library/Developer/Xcode || true
# Remove provisioning profiles
sudo rm -rf ~/Library/MobileDevice/Provisioning\ Profiles || true
# Remove Android SDK if present
sudo rm -rf ~/Library/Android/sdk || true
sudo rm -rf /usr/local/lib/android || true
# Remove .NET
sudo rm -rf /usr/local/share/dotnet || true
# Remove Go
sudo rm -rf /usr/local/go || true
sudo rm -rf ~/go || true
# Remove Ruby
sudo rm -rf /usr/local/lib/ruby || true
sudo rm -rf ~/.gem || true
# Remove Swift toolchains
sudo rm -rf /Library/Developer/Toolchains || true
# Remove Homebrew cache
rm -rf ~/Library/Caches/Homebrew/* || true
brew cleanup --prune=all 2>/dev/null || true
# Remove npm cache
npm cache clean --force || true
# Remove pip cache
pip cache purge 2>/dev/null || true
# Note: Don't delete ~/Library/Caches/* as subsequent steps may need it
# Additional cleanup for more disk space
# Remove hosted tool cache (can be several GB)
sudo rm -rf /Users/runner/hostedtoolcache || true
sudo rm -rf /opt/hostedtoolcache || true
# Remove browsers (not needed for Electron builds)
sudo rm -rf "/Applications/Google Chrome.app" || true
sudo rm -rf "/Applications/Firefox.app" || true
sudo rm -rf "/Applications/Safari Technology Preview.app" || true
# Remove PowerShell
sudo rm -rf /usr/local/microsoft/powershell || true
sudo rm -rf /usr/local/share/powershell || true
# Remove more from /usr/local
sudo rm -rf /usr/local/aws-cli || true
sudo rm -rf /usr/local/julia* || true
sudo rm -rf /usr/local/miniconda || true
# Remove unused large directories
sudo rm -rf /usr/share/swift || true
sudo rm -rf /usr/share/miniconda || true
# Remove Docker images if present
docker system prune -af 2>/dev/null || true
echo "Disk space after cleanup:"
df -h
- name: Checkout Code
uses: actions/checkout@v4
@ -125,16 +61,6 @@ jobs:
sudo apt-get update
sudo apt-get install -y libfuse2
# Verify disk space before build
- name: Check Disk Space Before Build (macOS)
if: runner.os == 'macOS'
run: |
echo "Disk space available before build:"
df -h
echo ""
echo "Largest directories in home:"
du -sh ~/* 2>/dev/null | sort -rh | head -10 || true
# Step for macOS builds with signing
- name: Build Release Files (macOS with signing)
if: runner.os == 'macOS'
@ -189,19 +115,12 @@ jobs:
steps:
- name: Create directories
run: |
mkdir -p release/mac-x64 release/mac-arm64 release/win-x64 release/linux-x64
# Download all artifacts with correct names
- name: Download mac-x64 artifact
uses: actions/download-artifact@v7
with:
name: release-macos-15-intel-x64
path: temp-mac-x64
mkdir -p release/mac-arm64 release/win-x64 release/linux-x64
- name: Download mac-arm64 artifact
uses: actions/download-artifact@v7
with:
name: release-macos-latest-arm64
name: release-warp-macos-15-arm64-6x-arm64
path: temp-mac-arm64
- name: Download win-x64 artifact
@ -220,13 +139,6 @@ jobs:
- name: Move files to clean folders
shell: bash
run: |
# mac-x64
if [ -d "temp-mac-x64/release" ]; then
mv temp-mac-x64/release/* release/mac-x64/ || true
else
mv temp-mac-x64/* release/mac-x64/ || true
fi
# mac-arm64
if [ -d "temp-mac-arm64/release" ]; then
mv temp-mac-arm64/release/* release/mac-arm64/ || true
@ -248,18 +160,12 @@ jobs:
mv temp-linux-x64/* release/linux-x64/ || true
fi
- name: Rename duplicate files
run: |
mv release/mac-x64/latest-mac.yml release/mac-x64/latest-x64-mac.yml || true
mv release/mac-arm64/latest-mac.yml release/mac-arm64/latest-arm64-mac.yml || true
# Create GitHub Release
- name: Create GitHub Release
if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@v1
with:
files: |
release/mac-x64/*
release/mac-arm64/*
release/win-x64/*
release/linux-x64/*

View file

@ -147,5 +147,12 @@ exports.default = async function afterPack(context) {
}
cleanSymlinks(prebuiltPath, appPath);
// Also clean symlinks in backend directory (e.g., backend/workspace/.initial_env)
const backendPath = path.join(resourcesPath, 'backend');
if (fs.existsSync(backendPath)) {
cleanSymlinks(backendPath, appPath);
}
console.log('✅ Symlink cleanup completed');
};

View file

@ -20,7 +20,7 @@
{
"from": "backend",
"to": "backend",
"filter": ["**/*", "!.venv/**/*"]
"filter": ["**/*", "!.venv/**/*", "!workspace/.initial_env/**/*"]
},
{
"from": "utils",