CanineHQ/canine · error

No ingress found for ingress controller

Error message

No ingress found for ingress controller

What it means

Error "No ingress found for ingress controller" thrown in CanineHQ/canine.

Source

Thrown at app/services/k8/stateless/ingress.rb:52

    result = kubectl.call(%w[get ingresses -o yaml])
    results = YAML.safe_load(result)
    results['items'].find { |r| r['metadata']['name'] == "#{@service.project.namespace}-ingress" }
  end

  INGRESS_APP_LABELS = %w[traefik ingress-nginx].freeze

  def self.hostname(client)
    services = client.get_services(namespace: nil).select { |s| s.spec.type == "LoadBalancer" }
    service = INGRESS_APP_LABELS.lazy.filter_map { |label|
      services.find { |s| s.metadata.labels&.[]("app.kubernetes.io/name") == label }
    }.first

    if service.nil?
      raise "No ingress controller service found"
    end
    ingress = service.status&.loadBalancer&.ingress&.first
    if ingress.nil?
      raise "No ingress found for ingress controller"
    end

    if ingress.ip
      {
        value: ingress.ip,
        type: :ip_address
      }
    else
      {
        value: ingress.hostname,
        type: :hostname
      }
    end
  end

  def hostname
    @hostname ||= begin
      self.class.hostname(self.client)

View on GitHub (pinned to ba4ee3968d)

When it happens

Trigger: Thrown at app/services/k8/stateless/ingress.rb:52 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/dd77d6a0a4800a9c. Report an issue: GitHub.