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