Remote Debugging

You can open a remote console to a running task by setting a breakpoint.

To set a breakpoint, run mint-breakpoint anywhere in your task. It's a binary, so you can run it directly from your run script or from inside another bash script.

When Mint encounters a breakpoint, it will pause execution and make a private SSH connection available to the running task.

tasks:
  - key: demo-breakpoint
    run: local_var="some value"
      mint-breakpoint
    env:
      SOME_ENV: the value

Once the breakpoint has been hit, use the mint debug command in the Mint CLI to open a shell. You'll need to pass the URL of the run. For example, with a run URL of:

https://cloud.rwx.com/mint/rwx/runs/a52b3893bd554cf883e300472d355273

You'll execute:

mint debug https://cloud.rwx.com/mint/rwx/runs/a52b3893bd554cf883e300472d355273

Mint uses tmux to drop you into a bash shell in the context that the breakpoint was set.

In the above task definition, you can echo $SOME_ENV and echo $local_var.

When you're done debugging, run exit or press ctrl+d to end your session.

You'll see output in your task logs indicating that your debugging session has finished.

mint-breakpoint session mintdebug_f510a720-4509-4fa5-852e-0d54c7ab1126 has exited. Continuing.