class Ronin::Puppet
Public Class Methods
new()
click to toggle source
# File lib/ronin/puppet.rb, line 23 def initialize @run_list = "#{Ronin::Config[:artifact_path]}/ronin.pp" @modules = Ronin::RunList.new.artifacts end
Public Instance Methods
clean_up()
click to toggle source
# File lib/ronin/puppet.rb, line 46 def clean_up Ronin::Log.info("Cleaning up Puppet run list at #{@run_list}.") File.delete(@run_list) end
create_run_list()
click to toggle source
# File lib/ronin/puppet.rb, line 28 def create_run_list Ronin::Log.info("Building Puppet run list at #{@run_list}.") File.open(@run_list, "w") do |f| @modules.each do |mod| Ronin::Log.info("Adding module '#{mod}' to run list.") f.write "include #{mod}\n" end end end
run()
click to toggle source
# File lib/ronin/puppet.rb, line 38 def run self.create_run_list Ronin::Log.info("Running Puppet, logging to #{Ronin::Config[:interpreter_log_path]}/ronin-puppet.log.") @cmd = Mixlib::ShellOut.new("#{Ronin::Util.find_cmd("puppet")} apply --ordering manifest --logdest #{Ronin::Config[:log_path]}/ronin-puppet.log --modulepath #{Ronin::Config[:artifact_path]} #{@run_list}") @cmd.run_command self.clean_up end