With this week's update we deliver one of the most requested features: the ability to debug errors directly in the pipeline.

Buddy lets you run tasks and commands in isolated containers with preinstalled frameworks and dependencies. When a build fails, it produces logs that you can use for debugging. However, sometimes the logs are not enough and the best method is debugging the error directly from the terminal. Now, you can launch such terminal in build containers from Buddy's UI with no additional configuration (such as with SSH keys).

Code of conduct

When your build fails, go its execution details and expand the logs under the corresponding action. You will find a new option labeled Debug action in terminal:

Location of the debug optionLocation of the debug option

Once you click it, the pipeline will change its status to In progress and an interactive terminal will appear in place of logs. The terminal will remain active until you click cancel or the action times out (90 minutes by default).

Active debug terminalActive debug terminal

Enabling debug mode will change the status of the pipeline to active which means all subsequent executions will be queued until the debugging is over. This is because Buddy needs to launch and run the container back again on the build server.

What you need to know

  • During the debug mode you can use all ENV VARs and services defined for the action.
  • The default working directory is the filesystem mounted to the container. The filesystem contains a clone of your repository and generated artifacts.
  • To download a specific file, simply write it down in the mounted filesytem. You can find the path to the filesystem in the $WORKING_DIR variable.
  • The default user in the terminal is ROOT. If you run the build with a different user, you can change the ID with the su command.

Buddy is 100% customer-driven. If there’s a feature or integration you miss, let us know in the comments below or directly at support@buddy.works