-
Notifications
You must be signed in to change notification settings - Fork 993
ci(desktop): use macos-latest-xlarge runner for faster builds #1372
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
141fbbe
84f11dd
526ee15
53486bf
f5f99f5
986a34a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -31,7 +31,7 @@ on: | |||||
| jobs: | ||||||
| build: | ||||||
| name: Build - macOS (${{ matrix.arch }}) | ||||||
| runs-on: macos-latest | ||||||
| runs-on: macos-latest-large | ||||||
| environment: production | ||||||
|
|
||||||
| strategy: | ||||||
|
|
@@ -96,15 +96,25 @@ jobs: | |||||
| STREAMS_URL: ${{ secrets.STREAMS_URL }} | ||||||
| run: bun run compile:app | ||||||
|
|
||||||
| - name: Build Electron app | ||||||
| - name: Prepare native modules & resources | ||||||
| working-directory: apps/desktop | ||||||
| run: | | ||||||
| bun run copy:native-modules | ||||||
| bun run download:claude | ||||||
|
|
||||||
| - name: Build & sign app bundle | ||||||
| working-directory: apps/desktop | ||||||
| env: | ||||||
| CSC_LINK: ${{ secrets.MAC_CERTIFICATE }} | ||||||
| CSC_KEY_PASSWORD: ${{ secrets.MAC_CERTIFICATE_PASSWORD }} | ||||||
| APPLE_ID: ${{ secrets.APPLE_ID }} | ||||||
| APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }} | ||||||
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | ||||||
| run: bun run package -- --publish never --config ${{ inputs.electron_builder_config }} | ||||||
| run: npx electron-builder --dir --arm64 --config ${{ inputs.electron_builder_config }} | ||||||
|
|
||||||
| - name: Package (DMG & ZIP) | ||||||
| working-directory: apps/desktop | ||||||
| run: npx electron-builder --prepackaged "release/mac-arm64/$(ls release/mac-arm64/)" --config ${{ inputs.electron_builder_config }} --publish never | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fragile: parsing If Proposed fix — use a glob to match the .app bundle- run: npx electron-builder --prepackaged "release/mac-arm64/$(ls release/mac-arm64/)" --config ${{ inputs.electron_builder_config }} --publish never
+ run: npx electron-builder --prepackaged release/mac-arm64/*.app --config ${{ inputs.electron_builder_config }} --publish neverIf the app name contains spaces and the glob must be quoted, use run: npx electron-builder --prepackaged "$(find release/mac-arm64 -maxdepth 1 -name '*.app' -print -quit)" --config ${{ inputs.electron_builder_config }} --publish never📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
|
|
||||||
| - name: Upload DMG artifact | ||||||
| uses: actions/upload-artifact@v4 | ||||||
|
|
||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
GitHub Actions macos-latest-large macos-latest-xlarge runner specifications architecture Apple Silicon Intel💡 Result:
GitHub Actions macOS larger runners: specs + CPU architecture
macos-latest-large-latest-large” tracks the latest GA Intel large image. [1]macos-latest-xlargeWhat “latest” maps to (images)
actions/runner-imagesrepo, macOS 15 (Intel) is labeledmacos-latest-large/macos-15-large(and alsomacos-15-intel). [3]macos-latest/macos-15/macos-15-xlarge. [3]Sources
[1] GitHub Docs — “Larger runners reference” (macOS large/xlarge table + specs). (docs.github.com)
[2] GitHub Changelog (July 2025) — XLarge upgraded to M2 Pro, 5‑core CPU, 8‑core GPU, 14 GB RAM, 14 GB storage. (github.blog)
[3]
actions/runner-images— “Available Images” (label ↔ image mapping, includingmacos-latest-largeandmacos-15-xlarge). (github.com)Citations:
🏁 Script executed:
Repository: superset-sh/superset
Length of output: 437
Runner architecture mismatch:
macos-latest-largeis Intel x86_64, but the build targetsarm64Apple Silicon.The workflow uses
macos-latest-large(Intel x64 runner) but the matrix specifiesarch: [arm64]. On GitHub Actions,macos-latest-largeis an Intel runner, whilemacos-latest-xlargeis the Apple Silicon (arm64) runner required for native arm64 builds. Building an arm64 application on an Intel runner will fail or produce incorrect output.Proposed fix
📝 Committable suggestion
🤖 Prompt for AI Agents