class GemFresh::Config

Attributes

local_gems[R]
minimal_gems[R]
private_gems[R]
system_wide_gems[R]

Public Class Methods

config() click to toggle source
# File lib/gem_fresh/config.rb, line 11
def self.config
  @@config ||= begin
    config = Config.new
    config.with_system_wide_impact([])
    config.with_local_impact([])
    config.with_minimal_impact([])
    config.that_are_private([])
    config
  end
end
configure(&block) click to toggle source
# File lib/gem_fresh/config.rb, line 6
def self.configure(&block)
  @@config ||= Config.new
  block.call(@@config)
end

Public Instance Methods

all_gems() click to toggle source
# File lib/gem_fresh/config.rb, line 38
def all_gems
  @system_wide_gems + @local_gems + @minimal_gems + @private_gems
end
that_are_private(gems) click to toggle source
# File lib/gem_fresh/config.rb, line 34
def that_are_private(gems)
  @private_gems = clean_gems(gems)
end
with_local_impact(gems) click to toggle source
# File lib/gem_fresh/config.rb, line 26
def with_local_impact(gems)
  @local_gems = clean_gems(gems)
end
with_minimal_impact(gems) click to toggle source
# File lib/gem_fresh/config.rb, line 30
def with_minimal_impact(gems)
  @minimal_gems = clean_gems(gems)
end
with_system_wide_impact(gems) click to toggle source
# File lib/gem_fresh/config.rb, line 22
def with_system_wide_impact(gems)
  @system_wide_gems = clean_gems(gems)
end

Private Instance Methods

clean_gems(gems) click to toggle source
# File lib/gem_fresh/config.rb, line 44
def clean_gems(gems)
  if gems.include?('rails')
    raise "Do not explicitly specify the rails gem in gem_fresh.rb." #TODO: why not?
  end
  gems
end