Module: R10K::CLI::Puppetfile::Purge

Defined in:
lib/r10k/cli/puppetfile.rb

Class Method Summary collapse

Class Method Details

.commandObject



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/r10k/cli/puppetfile.rb', line 80

def self.command
  @cmd ||= Cri::Command.define do
    name  'purge'
    usage 'purge'
    summary 'Purge unmanaged modules from a Puppetfile managed directory'

    run do |opts, args, cmd|
      puppetfile_root = Dir.getwd
      puppetfile_path = ENV['PUPPETFILE_DIR']
      puppetfile      = ENV['PUPPETFILE']

      puppetfile = R10K::Puppetfile.new(puppetfile_root, puppetfile_path, puppetfile)

      runner = R10K::TaskRunner.new(:trace => opts[:trace])
      task   = R10K::Task::Puppetfile::Purge.new(puppetfile)
      runner.append_task task

      runner.run

      exit runner.exit_value
    end
  end
end