{"record":{"id":"1571730c590d0336","repo":"theforeman/foreman","slug":"unable-to-find-a-proxy-with-bmc-feature","errorCode":null,"errorMessage":"Unable to find a proxy with BMC feature","messagePattern":"Unable to find a proxy with BMC feature","errorType":"exception","errorClass":"Foreman::Exception","httpStatus":null,"severity":"error","filePath":"app/models/nic/bmc.rb","lineNumber":19,"sourceCode":"module Nic\n  class BMC < Managed\n    PROVIDERS = %w(IPMI Redfish)\n    before_validation :ensure_physical\n    before_validation { |nic| nic.provider == 'Redfish' || nic.provider.try(:upcase!) }\n    validates :provider, :presence => true, :inclusion => { :in => PROVIDERS }\n    validates :mac, :presence => true, :if => :managed?\n    validate :validate_bmc_proxy\n\n    def virtual\n      false\n    end\n    alias_method :virtual?, :virtual\n\n    attr_exportable :provider, :username, :password\n\n    def proxy\n      proxy = bmc_proxy\n      raise Foreman::Exception.new(N_('Unable to find a proxy with BMC feature')) if proxy.nil?\n      args = {\n        :host_ip => ip,\n        :fqdn => fqdn,\n        :url => proxy.url,\n        :user => username,\n        :password => password_unredacted,\n      }\n      args[:bmc_provider] = provider if provider != 'IPMI'\n      ProxyAPI::BMC.new(args)\n    end\n\n    def self.humanized_name\n      N_('BMC')\n    end\n\n    class Jail < Nic::Managed::Jail\n      allow :provider, :username, :password\n    end","sourceCodeStart":1,"sourceCodeEnd":37,"githubUrl":"https://github.com/theforeman/foreman/blob/6b05625475cfe6aac31a88f8c8ee6e62e4efe620/app/models/nic/bmc.rb#L1-L37","documentation":"Error \"Unable to find a proxy with BMC feature\" thrown in theforeman/foreman.","triggerScenarios":"Thrown at app/models/nic/bmc.rb:19 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6b05625475cfe6aac31a88f8c8ee6e62e4efe620","analyzedAt":"2026-08-23T17:46:34.094Z","schemaVersion":2},"datasetVersion":"2026-08-23T21:17:23.414Z"}