Skip to content

ci(desktop): smoke-test built binaries by launching them for 10s#358

Merged
aktech merged 2 commits into
mainfrom
ci/desktop-smoke-test
Jun 1, 2026
Merged

ci(desktop): smoke-test built binaries by launching them for 10s#358
aktech merged 2 commits into
mainfrom
ci/desktop-smoke-test

Conversation

@Adam-D-Lewis

Copy link
Copy Markdown
Member

Summary

  • Add a post-build smoke test on each OS that launches the built Nebi binary, waits 10s, and fails if it exited or crashed within that window.
  • Catches runtime regressions that build-only CI misses — e.g. the WebKitGTK/JSC signal-handler SIGSEGV fixed in fix(desktop): re-apply SA_ONSTACK to survive WebKitGTK JSC signal handler clobbering #351, which only triggered once the JS context lazy-inits.
  • Runs before release upload, so a regression gates v* tag releases too, not just PRs.

How each platform decides pass/fail

  • Linux (xvfb-run -a timeout 10 ./build/bin/Nebi): success iff timeout exits 124 (still-running process killed at deadline). A SIGSEGV would exit 139, SIGBUS 138 — both fail.
  • macOS (open Nebi.app, pgrep -x Nebi after 10s): success iff still running.
  • Windows (Start-Process -PassThru, check HasExited after 10s): success iff false.

Adds xvfb to the Linux apt deps.

Test plan

Build-only CI doesn't exercise runtime initialization, so issues like
the WebKitGTK/JSC signal-handler SIGSEGV from #350/#351 — which only
trips once the JS context lazy-inits — slip through.

Add a post-build step on each OS that launches the artifact, waits 10s,
and fails if it exited or crashed within that window:
- Linux: xvfb-run + timeout, expect exit 124 (timed out still-running)
- macOS: open Nebi.app, pgrep -x Nebi
- Windows: Start-Process -PassThru, check HasExited

Runs before release upload so a regression also gates v* tag releases.
Adds xvfb to the Linux apt deps.
@netlify

netlify Bot commented May 28, 2026

Copy link
Copy Markdown

Deploy Preview for nebi-docs canceled.

Name Link
🔨 Latest commit d4db00f
🔍 Latest deploy log https://app.netlify.com/projects/nebi-docs/deploys/6a18a2055ba4b90008244f1d

@Adam-D-Lewis Adam-D-Lewis requested review from aktech and viniciusdc May 28, 2026 20:13
@aktech aktech merged commit 584a3fd into main Jun 1, 2026
14 checks passed
@aktech aktech deleted the ci/desktop-smoke-test branch June 1, 2026 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants