add macos CI build#122
Conversation
Huibean
commented
Mar 29, 2026
- add macos CI build .dmg
There was a problem hiding this comment.
Pull request overview
Adds macOS CI support to build a distributable .app bundle and package it into a .dmg artifact for DroneCAN GUI Tool.
Changes:
- Introduce a
py2appbuild configuration for creating a macOS.app. - Add a macOS build script to produce a
.dmgindist/. - Add a GitHub Actions workflow to run the macOS build and upload the
.dmgartifact.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
setup_mac.py |
Adds py2app setup configuration for building a macOS app bundle. |
macbuild.sh |
Automates venv setup, py2app build, and DMG packaging. |
.github/workflows/macbuild.yml |
Adds a macOS CI job to run the build script and upload the DMG. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| hdiutil create \ | ||
| -volname "${APP_NAME}" \ | ||
| -srcfolder "dist/${APP_NAME}.app" \ | ||
| -ov \ | ||
| -format UDZO \ | ||
| "dist/DroneCAN_GUI_Tool.dmg" |
There was a problem hiding this comment.
The DMG packaging step references dist/${APP_NAME}.app, but py2app names the output bundle directory from the entry script basename (bin/dronecan_gui_tool), so the generated bundle path will be dist/dronecan_gui_tool.app by default. This will cause the hdiutil create step to fail in CI unless the source folder path is updated (or the py2app config is changed to emit the expected bundle name).
91c97cc to
a488bd5
Compare
a488bd5 to
9e8b2e4
Compare
|
Hi @tridge , can you have a look on this, I have tested the CI build dmg, it is working |