Chapter 8. Troubleshooting Builds
Builder instances in {product-title} are ephemeral and shut down automatically after builds complete or fail. To troubleshoot build issues, you must capture logs while the builds are running.
8.1. Debug configuration flag Copy linkLink copied to clipboard!
The DEBUG configuration flag in {product-title} prevents builder instances from shutting down automatically after builds complete or fail. Set this flag to True to debug builder node issues.
When set to True, the debug feature prevents the build nodes from shutting down after the quay-builder service is done or fails. It also prevents the build manager from cleaning up the instances by terminating EC2 instances or deleting Kubernetes jobs. This allows debugging builder node issues.
Debugging should not be set in a production cycle. The lifetime service still exists; for example, the instance still shuts down after approximately two hours. When this happens, EC2 instances are terminated and Kubernetes jobs are completed.
Enabling debug also affects the ALLOWED_WORKER_COUNT because the unterminated instances and jobs still count toward the total number of running workers. As a result, the existing builder workers must be manually deleted if ALLOWED_WORKER_COUNT is reached to be able to schedule new builds.
8.2. Troubleshooting OpenShift Container Platform and Kubernetes Builds Copy linkLink copied to clipboard!
To troubleshoot OpenShift Container Platform and Kubernetes builds in {product-title}, you can create a port forwarding tunnel to the builder pod and access it via SSH. Check the quay-builder service logs to diagnose build issues.
Procedure
Create a port forwarding tunnel between your local machine and a pod running with either an OpenShift Container Platform cluster or a Kubernetes cluster by entering the following command:
oc port-forward <builder_pod> 9999:2222
$ oc port-forward <builder_pod> 9999:2222Copy to Clipboard Copied! Toggle word wrap Toggle overflow Establish an SSH connection to the remote host using a specified SSH key and port, for example:
ssh -i /path/to/ssh/key/set/in/ssh_authorized_keys -p 9999 core@localhost
$ ssh -i /path/to/ssh/key/set/in/ssh_authorized_keys -p 9999 core@localhostCopy to Clipboard Copied! Toggle word wrap Toggle overflow Obtain the
quay-builderservice logs by entering the following commands:systemctl status quay-builder
$ systemctl status quay-builderCopy to Clipboard Copied! Toggle word wrap Toggle overflow journalctl -f -u quay-builder
$ journalctl -f -u quay-builderCopy to Clipboard Copied! Toggle word wrap Toggle overflow