class MrBump::Config

This class sets up access to the config file

Attributes

config_file[R]

Public Class Methods

new(config_file = nil) click to toggle source
# File lib/mr_bump/config.rb, line 12
def initialize(config_file = nil)
  @config_file = config_file || default_project_filename
end

Public Instance Methods

config() click to toggle source
# File lib/mr_bump/config.rb, line 45
def config
  @config ||= default_config.merge(user_config).merge(project_config)
end
default_config() click to toggle source
# File lib/mr_bump/config.rb, line 24
def default_config
  @default_config = begin
    defaults_yml = File.join(File.dirname(__FILE__), '..', '..', 'defaults.yml')
    YAML.load_file(defaults_yml)
  end
end
default_project_filename() click to toggle source
# File lib/mr_bump/config.rb, line 20
def default_project_filename
  File.join('.mr_bump')
end
project_config() click to toggle source
# File lib/mr_bump/config.rb, line 38
def project_config
  @project_config ||= begin
    loaded = YAML.load_file(@config_file) if File.exist?(@config_file)
    loaded || {}
  end
end
user_config() click to toggle source
# File lib/mr_bump/config.rb, line 31
def user_config
  @user_config = begin
    loaded = YAML.load_file(user_config_file) if File.exist?(user_config_file)
    loaded || {}
  end
end
user_config_file() click to toggle source
# File lib/mr_bump/config.rb, line 16
def user_config_file
  File.join(Dir.home, '.mr_bump.yml')
end