π (ci) [NO-ISSUE]: Add devtools desktop app build workflow#1303
π (ci) [NO-ISSUE]: Add devtools desktop app build workflow#1303OlivierFreyssinet merged 4 commits intodevelopfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
Wiz Scan Summary
To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension. |
Replace hardcoded /home/runner/.proto/bin with $HOME/.proto/bin so the setup action works on both Linux and macOS runners. Co-authored-by: Cursor <cursoragent@cursor.com>
e4ab7e6 to
d9f8afb
Compare
There was a problem hiding this comment.
Pull request overview
Adds CI automation to build and publish the Devtools Electron desktop app artifacts on pushes to develop, and updates supporting build/config assets and Danger reporting to make the pipeline more reliable across platforms.
Changes:
- Add a new GitHub Actions workflow to build macOS (arm64) + Linux artifacts and publish them to an auto-updated GitHub Release.
- Update Devtools packaging configuration (electron-builder artifact naming, product name, Linux executable name) and build scripts (ensure typecheck runs).
- Refactor Danger checks to return structured outputs and generate a consolidated Markdown report (including step-summary support).
Reviewed changes
Copilot reviewed 4 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
danger/helpers.ts |
Refactors checks to return structured results and generates a consolidated report for CI/local runs. |
danger/dangerfile-ci.ts |
Switches CI Danger execution to the new reporting/orchestration helpers. |
danger/dangerfile-local.ts |
Switches local Danger execution to the new reporting/orchestration helpers. |
danger/dangerfile-local-fork.ts |
Switches local-fork Danger execution to the new reporting/orchestration helpers. |
apps/devtools/package.json |
Makes macOS/Linux build scripts consistent with Windows by running the shared build (incl. typecheck). |
apps/devtools/electron-builder.yml |
Updates product/artifact naming and scopes executableName to Linux. |
apps/devtools/build/icon.png |
Replaces the default Electron icon with a Ledger icon. |
apps/devtools/build/icon.ico |
Adds/updates Windows icon asset. |
apps/devtools/build/icon.icns |
Adds/updates macOS icon asset. |
.github/workflows/build_devtools.yml |
New workflow that builds Devtools desktop artifacts for macOS/Linux and publishes to a GitHub Release. |
.github/actions/setup-with-cache-composite/action.yml |
Makes proto path setup cross-platform by using $HOME instead of /home/runner. |
π‘ Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
d9f8afb to
459bb58
Compare
Build macOS (arm64) and Linux (AppImage, deb, snap) artifacts using pnpm deploy to flatten workspace symlinks for electron-builder. Publish to GitHub Release on pushes to develop. Include xattr workaround instructions in release notes and step summary. Co-authored-by: Cursor <cursoragent@cursor.com>
- Set productName to "Ledger DMK DevTools" - Add OS name and sanitized prefix in artifact filenames - Move executableName to linux section only (fixes macOS app name) - Make build:mac and build:linux scripts consistent with build:win - Add 1024x1024 app icon and remove old default icon files Co-authored-by: Cursor <cursoragent@cursor.com>
459bb58 to
60dbe64
Compare
| apps/devtools-deploy/dist/ledger-dmk-devtools-*.snap | ||
| if-no-files-found: error | ||
|
|
||
| publish-to-release: |
There was a problem hiding this comment.
[ASK] Do we want to release it all the time or can we move this section in the release job?
There was a problem hiding this comment.
The logic for doing it there is that it'll be useful during development of the DMK. If we do modifications on it, every dev of the team should be able to use the tools during dev phase, not waiting for those changes to be released.
There was a problem hiding this comment.
You could store it as an artifact instead, reserving the release publish for actual releases. Artifacts allow you to download the app without cluttering the release section with every job run
- Replace npm with pnpm in package.json scripts - Extract inline docs from workflow into separate files Co-authored-by: Cursor <cursoragent@cursor.com>
π Description
Add a GitHub Actions workflow to build the Devtools Electron desktop app for macOS (arm64) and Linux, with artifacts published to a GitHub Release on pushes to
develop.Key changes:
.github/workflows/build_devtools.ymlthat builds macOS (arm64) and Linux (AppImage, deb, snap) artifactssetup-with-cache-compositeto work on macOS (replace hardcoded/home/runnerwith$HOME)pnpm deploy --legacyto flatten workspace symlinks before electron-builder packaging (workaround for electron-builder + pnpm workspace compatibility)Workflow features:
develop(when devtools/packages paths change) andworkflow_dispatchhttps://github.com/LedgerHQ/device-sdk-ts/releases/tag/devtools-latest
β Context
β Checklist
$HOMEpath)Made with Cursor