theforeman/foreman · error · Foreman::Exception

Please provide a medium provider. It can be found as @medium

Error message

Please provide a medium provider. It can be found as @medium_provider in templates, or Foreman::Plugin.medium_providers_registry.find_provider(host)

What it means

Error "Please provide a medium provider. It can be found as @medium_provider in templates, or Foreman::Plugin.medium_providers_registry.find_provider(host)" thrown in theforeman/foreman.

Source

Thrown at app/models/operatingsystem.rb:178

  def to_s
    fullname
  end

  # Implemented only in the OSs subclasses where it makes sense
  def available_loaders
    ["None", "PXELinux BIOS"]
  end

  # The DHCP record type to use, can be overriden by OSs subclasses
  def dhcp_record_type
    Net::DHCP::Record
  end

  # sets the prefix for the tfp files based on medium unique identifier
  def pxe_prefix(medium_provider)
    unless medium_provider.is_a? MediumProviders::Provider
      raise Foreman::Exception.new(N_('Please provide a medium provider. It can be found as @medium_provider in templates, or Foreman::Plugin.medium_providers_registry.find_provider(host)'))
    end
    "boot/#{medium_provider.unique_id}"
  end

  def pxe_files(medium_provider)
    unless medium_provider.is_a? MediumProviders::Provider
      raise Foreman::Exception.new(N_('Please provide a medium provider. It can be found as @medium_provider in templates, or Foreman::Plugin.medium_providers_registry.find_provider(host)'))
    end
    boot_files_uri(medium_provider).collect do |img|
      { pxe_prefix(medium_provider).to_sym => img.to_s}
    end
  end

  def pxedir(medium_provider = nil)
    ""
  end

  apipie :method, 'Returns path to the kernel to be installed with prefix based on given medium provider' do

View on GitHub (pinned to 6b05625475)

When it happens

Trigger: Thrown at app/models/operatingsystem.rb:178 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of theforeman/foreman@6b05625475 (2026-08-23). Data as JSON: /api/errors/a3863ad79d8e592e. Report an issue: GitHub.