theforeman/foreman · error · ProxyException

Unable to get environment from Puppet

Error message

Unable to get environment from Puppet

What it means

Error "Unable to get environment from Puppet" thrown in theforeman/foreman.

Source

Thrown at app/services/proxy_api/puppet.rb:17

module ProxyAPI
  class Puppet < ProxyAPI::Resource
    def initialize(args)
      @url = args[:url] + "/puppet"
      super args
    end

    def environments
      parse(get("environments"))
    rescue => e
      raise ProxyException.new(url, e, N_("Unable to get environments from Puppet"))
    end

    def environment(env)
      parse(get("environments/#{env}"))
    rescue => e
      raise ProxyException.new(url, e, N_("Unable to get environment from Puppet"))
    end

    def classes(env)
      return if env.blank?
      pcs = parse(get("environments/#{env}/classes"))
      Hash[pcs.map { |k| [k.keys.first, Foreman::ImporterPuppetclass.new(k.values.first)] }]
    rescue RestClient::ResourceNotFound
      {}
    rescue => e
      raise ProxyException.new(url, e, N_("Unable to get classes from Puppet for %s"), env)
    end

    def class_count(env)
      return if env.blank?
      pcs = parse(get("environments/#{env}/classes"))
      pcs.length
    rescue => e
      raise ProxyException.new(url, e, N_("Unable to get classes from Puppet for %s"), env)

View on GitHub (pinned to 6b05625475)

When it happens

Trigger: Thrown at app/services/proxy_api/puppet.rb:17 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/42412f2d0bfbb1b7. Report an issue: GitHub.