mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
26 lines
606 B
Ruby
26 lines
606 B
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
module Bundler
|
||
|
class CLI::Clean
|
||
|
attr_reader :options
|
||
|
|
||
|
def initialize(options)
|
||
|
@options = options
|
||
|
end
|
||
|
|
||
|
def run
|
||
|
require_path_or_force unless options[:"dry-run"]
|
||
|
Bundler.load.clean(options[:"dry-run"])
|
||
|
end
|
||
|
|
||
|
protected
|
||
|
|
||
|
def require_path_or_force
|
||
|
return unless Bundler.use_system_gems? && !options[:force]
|
||
|
raise InvalidOption, "Cleaning all the gems on your system is dangerous! " \
|
||
|
"If you're sure you want to remove every system gem not in this " \
|
||
|
"bundle, run `bundle clean --force`."
|
||
|
end
|
||
|
end
|
||
|
end
|