{"record":{"id":"bbab7aa722636f15","repo":"puppetlabs/puppet","slug":"source-must-be-defined-to-generate-name","errorCode":null,"errorMessage":"%{source} must be defined to generate %{name}","messagePattern":"%(.+?) must be defined to generate %(.+?)","errorType":"exception","errorClass":"ArgumentError","httpStatus":null,"severity":"error","filePath":"lib/puppet/util/ldap/manager.rb","lineNumber":145,"sourceCode":"\n  # Declare a new attribute generator.\n  def generates(parameter)\n    @generators << Puppet::Util::Ldap::Generator.new(parameter)\n    @generators[-1]\n  end\n\n  # Generate any extra values we need to make the ldap entry work.\n  def generate(values)\n    return unless @generators.length > 0\n\n    @generators.each do |generator|\n      # Don't override any values that might exist.\n      next if values[generator.name]\n\n      if generator.source\n        value = values[generator.source]\n        unless value\n          raise ArgumentError, _(\"%{source} must be defined to generate %{name}\") %\n                               { source: generator.source, name: generator.name }\n        end\n        result = generator.generate(value)\n      else\n        result = generator.generate\n      end\n\n      result = [result] unless result.is_a?(Array)\n      result = result.collect(&:to_s)\n\n      values[generator.name] = result\n    end\n  end\n\n  def initialize\n    @rdn = :cn\n    @generators = []\n  end","sourceCodeStart":127,"sourceCodeEnd":163,"githubUrl":"https://github.com/puppetlabs/puppet/blob/e227c27540975c25aa22d533a52424a9d2fc886a/lib/puppet/util/ldap/manager.rb#L127-L163","documentation":"Error \"%{source} must be defined to generate %{name}\" thrown in puppetlabs/puppet.","triggerScenarios":"Thrown at lib/puppet/util/ldap/manager.rb:145 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":"e227c27540975c25aa22d533a52424a9d2fc886a","analyzedAt":"2026-08-21T20:49:46.650Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}