Skip to content

Using Pernosco To Debug Github Actions Test Failures

Robert O'Callahan edited this page Aug 21, 2021 · 4 revisions

Quick Start

  • Add the Pernosco Github app to your repository
  • Add PERNOSCO_ENABLE: 1 to one or more steps in your Github Actions workflow (e.g. .gitlab/workflows/build.yml)

When that step fails during an Actions workflow run, Pernosco will try to reproduce the bug. If successful, Pernosco adds a "debug" status to the commit with a "Details" link to the debugging session.

Example

See https://github.com/Pernosco/github-actions-test/commit/d3defd861989c153c298e5086fe1c3ae51cbe457.

Pernosco "debug" status with Details link to Pernosco debugging sessions

Additional Features

Add PERNOSCO_RR_RECORD_ARGS: --chaos to enable rr chaos mode for improved reproduction of hard-to-reproduce bugs.

Add PERNOSCO_RETRIES: n to request that the step be retried n times to try to reproduce a failure. n is currently limited to 10.

Caveats

This only works for projects explicitly authorized. Contact inquiries@pernos.co to request authorization.

Pernosco currently targets C, C++, Ada, Rust and V8 JS (e.g. node.js) applications that run on x86 Linux and work with rr.