Sha256: 7337cfcfeb7efbdd239f6a6d43344a069992028e0bbd79bb62487642af7e7cb4

Contents?: true

Size: 1.08 KB

Versions: 24

Compression:

Stored size: 1.08 KB

Contents

module PuppetSpec::Compiler
  def compile_to_catalog(string, node = Puppet::Node.new('foonode'))
    Puppet[:code] = string
    Puppet::Parser::Compiler.compile(node)
  end

  def compile_to_ral(manifest)
    catalog = compile_to_catalog(manifest)
    ral = catalog.to_ral
    ral.finalize
    ral
  end

  def compile_to_relationship_graph(manifest, prioritizer = Puppet::Graph::SequentialPrioritizer.new)
    ral = compile_to_ral(manifest)
    graph = Puppet::Graph::RelationshipGraph.new(prioritizer)
    graph.populate_from(ral)
    graph
  end

  def apply_compiled_manifest(manifest, prioritizer = Puppet::Graph::SequentialPrioritizer.new)
    transaction = Puppet::Transaction.new(compile_to_ral(manifest),
                                         Puppet::Transaction::Report.new("apply"),
                                         prioritizer)
    transaction.evaluate
    transaction.report.finalize_report

    transaction
  end

  def order_resources_traversed_in(relationships)
    order_seen = []
    relationships.traverse { |resource| order_seen << resource.ref }
    order_seen
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
puppet-3.6.2 spec/lib/puppet_spec/compiler.rb
puppet-3.6.2-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.6.1 spec/lib/puppet_spec/compiler.rb
puppet-3.6.1-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.6.0 spec/lib/puppet_spec/compiler.rb
puppet-3.6.0-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.6.0.rc1 spec/lib/puppet_spec/compiler.rb
puppet-3.6.0.rc1-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.5.1 spec/lib/puppet_spec/compiler.rb
puppet-3.5.1-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.5.1.rc1 spec/lib/puppet_spec/compiler.rb
puppet-3.5.1.rc1-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc3 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc3-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc2 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc2-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc1 spec/lib/puppet_spec/compiler.rb
puppet-3.5.0.rc1-x86-mingw32 spec/lib/puppet_spec/compiler.rb
puppet-3.4.3 spec/lib/puppet_spec/compiler.rb
puppet-3.4.2 spec/lib/puppet_spec/compiler.rb