class Nanoc::CLI::Commands::Prune
Public Instance Methods
run()
click to toggle source
# File lib/nanoc/cli/commands/prune.rb, line 20 def run @site = load_site res = Nanoc::Core::Compiler.new_for(@site).run_until_reps_built reps = res.fetch(:reps) listener_class = Nanoc::CLI::CompileListeners::FileActionPrinter listener = listener_class.new(reps: reps) listener.start_safely if options.key?(:yes) Nanoc::Core::Pruner.new(@site.config, reps, exclude: prune_config_exclude).run elsif options.key?(:'dry-run') Nanoc::Core::Pruner.new(@site.config, reps, exclude: prune_config_exclude, dry_run: true).run else $stderr.puts 'WARNING: Since the prune command is a destructive command, it requires an additional --yes flag in order to work.' $stderr.puts $stderr.puts 'Please ensure that the output directory does not contain any files (such as images or stylesheets) that are necessary but are not managed by Nanoc. If you want to get a list of all files that would be removed, pass --dry-run.' exit 1 end ensure listener&.stop_safely end
Protected Instance Methods
prune_config()
click to toggle source
# File lib/nanoc/cli/commands/prune.rb, line 45 def prune_config @site.config[:prune] || {} end
prune_config_exclude()
click to toggle source
# File lib/nanoc/cli/commands/prune.rb, line 49 def prune_config_exclude prune_config[:exclude] || {} end