Class: Puppet::Pops::Loader::GenericPlanInstantiator
- Defined in:
- lib/puppet/pops/loader/generic_plan_instantiator.rb
Overview
the type of the plan.
Class Method Summary collapse
Class Method Details
.create(loader, typed_name, source_refs) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/puppet/pops/loader/generic_plan_instantiator.rb', line 10 def self.create(loader, typed_name, source_refs) if source_refs.length > 1 raise ArgumentError, _("Found multiple files for plan '%{plan_name}' but only one is allowed") % { plan_name: typed_name.name } end source_ref = source_refs[0] code_string = Puppet::FileSystem.read(source_ref, :encoding => 'utf-8') instantiator = if source_ref.end_with?('.pp') Puppet::Pops::Loader::PuppetPlanInstantiator else Puppet.lookup(:yaml_plan_instantiator) do raise Puppet::DevError, _("No instantiator is available to load plan from %{source_ref}") % { source_ref: source_ref } end end instantiator.create(loader, typed_name, source_ref, code_string) end |