CanineHQ/canine · error · Deployments::BaseDeploymentService::DeploymentFailure
Predeploy command `#{command}` took too long to complete
Error message
Predeploy command `#{command}` took too long to complete What it means
Error "Predeploy command `#{command}` took too long to complete" thrown in CanineHQ/canine.
Source
Thrown at app/services/k8/stateless/command.rb:32
def namespace
project.name
end
def delete_if_exists!
return if kubectl.call(%w[get job] + [ name, "-n", namespace ]).strip.empty?
kubectl.call(%w[delete job] + [ name, "-n", namespace ])
rescue StandardError => e
nil
end
def wait_for_completion
retries = 0
while true
break if done?
sleep(3.0)
retries += 1
if retries > 30
raise Deployments::BaseDeploymentService::DeploymentFailure, "Predeploy command `#{command}` took too long to complete"
end
end
end
def done?
_statuses = statuses
if _statuses.include?("Failed") || _statuses.include?("ActiveDeadlineExceeded")
raise Deployments::BaseDeploymentService::DeploymentFailure, "Predeploy command `#{command}` failed"
end
_statuses.include?("Complete")
end
def statuses
begin
output = kubectl.call(%w[get job] + [ name, "-n", namespace, "-o", "jsonpath={.status.conditions[*].type}" ])
conditions = output.split
conditions.map { |condition| condition.strip }
rescue => eView on GitHub (pinned to ba4ee3968d)
When it happens
Trigger: Thrown at app/services/k8/stateless/command.rb:32 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of CanineHQ/canine@ba4ee3968d (2026-08-23).
Data as JSON: /api/errors/9f4e4c4fdfae0d0a.
Report an issue: GitHub.