puppetlabs/puppet · error · ArgumentError

%{source} must be defined to generate %{name}

Error message

%{source} must be defined to generate %{name}

What it means

Error "%{source} must be defined to generate %{name}" thrown in puppetlabs/puppet.

Source

Thrown at lib/puppet/util/ldap/manager.rb:145

  # Declare a new attribute generator.
  def generates(parameter)
    @generators << Puppet::Util::Ldap::Generator.new(parameter)
    @generators[-1]
  end

  # Generate any extra values we need to make the ldap entry work.
  def generate(values)
    return unless @generators.length > 0

    @generators.each do |generator|
      # Don't override any values that might exist.
      next if values[generator.name]

      if generator.source
        value = values[generator.source]
        unless value
          raise ArgumentError, _("%{source} must be defined to generate %{name}") %
                               { source: generator.source, name: generator.name }
        end
        result = generator.generate(value)
      else
        result = generator.generate
      end

      result = [result] unless result.is_a?(Array)
      result = result.collect(&:to_s)

      values[generator.name] = result
    end
  end

  def initialize
    @rdn = :cn
    @generators = []
  end

View on GitHub (pinned to e227c27540)

When it happens

Trigger: Thrown at lib/puppet/util/ldap/manager.rb:145 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of puppetlabs/puppet@e227c27540 (2026-08-21). Data as JSON: /api/errors/bbab7aa722636f15. Report an issue: GitHub.