Class: Bundler::CLI

Inherits:
Object
  • Object
show all
Defined in:
lib/bundler/cli.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ CLI

Returns a new instance of CLI.



33
34
35
36
# File 'lib/bundler/cli.rb', line 33

def initialize(options)
  @options = options
  @environment = Bundler::Environment.load(@options[:manifest])
end

Class Method Details

.run(command, options = {}) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/bundler/cli.rb', line 5

def self.run(command, options = {})
  new(options).run(command)
rescue DefaultManifestNotFound => e
  Bundler.logger.error "Could not find a Gemfile to use"
  exit 3
rescue InvalidEnvironmentName => e
  Bundler.logger.error "Gemfile error: #{e.message}"
  exit 4
rescue InvalidRepository => e
  Bundler.logger.error e.message
  exit 5
rescue VersionConflict => e
  Bundler.logger.error e.message
  exit 6
rescue GemNotFound => e
  Bundler.logger.error e.message
  exit 7
rescue InvalidCacheArgument => e
  Bundler.logger.error e.message
  exit 8
rescue SourceNotCached => e
  Bundler.logger.error e.message
  exit 9
rescue ManifestFileNotFound => e
  Bundler.logger.error e.message
  exit 10
end

Instance Method Details

#bundleObject



38
39
40
# File 'lib/bundler/cli.rb', line 38

def bundle
  @environment.install(@options)
end

#cacheObject



42
43
44
# File 'lib/bundler/cli.rb', line 42

def cache
  @environment.cache(@options)
end

#execObject



58
59
60
61
62
# File 'lib/bundler/cli.rb', line 58

def exec
  @environment.setup_environment
  # w0t?
  super(*$command)
end

#listObject



50
51
52
# File 'lib/bundler/cli.rb', line 50

def list
  @environment.list(@options)
end

#list_outdatedObject



54
55
56
# File 'lib/bundler/cli.rb', line 54

def list_outdated
  @environment.list_outdated(@options)
end

#pruneObject



46
47
48
# File 'lib/bundler/cli.rb', line 46

def prune
  @environment.prune(@options)
end

#run(command) ⇒ Object



64
65
66
# File 'lib/bundler/cli.rb', line 64

def run(command)
  send(command)
end