Skip to content

Home

DebugCI is a tool to debug CI pipeline issues. DebugCI launches an SSH server with remote port forwarding that allows you to SSH into the pipeline whenever there is an error (trap). The application is not limited to CI pipelines.

Requirements

What do you need to use DebugCI?

  • A rendezvous server that you and the pipeline job can reach with SSH. DebugCI sets up forwarding such that you can connect to the pipline worker via the rendezvous server.
  • Inject the debugci binary into your pipeline payload.
  • Configure SSH keys via environment variables.
  • Call the binary whenever there is an issue.

Typical issues in CI pipelines

The following list summarizes typical issues in CI pipelines that can be identified quickly with DebugCI.

  • Downloading external resources fails due to different network configurations, firewalls, login pages, etc...
  • Expected program no present in Docker image used in pipeline
  • Artifacts from previous job not properly collected due to typos in paths
  • Broken artifacts from previous job
  • Use of submodules without GIT_SUBMODULE_STRATEGY=recursive
  • Misconfiguration of environment variables