Class: Rbk::Configuration
- Inherits:
-
Object
- Object
- Rbk::Configuration
show all
- Defined in:
- lib/rbk/configuration.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(config = {}) ⇒ Configuration
Returns a new instance of Configuration.
23
24
25
26
|
# File 'lib/rbk/configuration.rb', line 23
def initialize(config={})
@config = defaults.merge(config)
@parser = create_parser
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(m, *args, &block) ⇒ Object
40
41
42
43
44
45
46
|
# File 'lib/rbk/configuration.rb', line 40
def method_missing(m, *args, &block)
if @config.key?(m.to_s)
@config[m.to_s]
else
super
end
end
|
Class Method Details
.create(argv) ⇒ Object
8
9
10
|
# File 'lib/rbk/configuration.rb', line 8
def self.create(argv)
self.load.parse(argv)
end
|
.load ⇒ Object
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/rbk/configuration.rb', line 12
def self.load
if File.exists?('.rbk.yml')
config = YAML.load_file('.rbk.yml')
elsif File.exists?(File.join(Dir.home, '.rbk.yml'))
config = YAML.load_file(File.join(Dir.home, '.rbk.yml'))
else
config = {}
end
new(config)
end
|
Instance Method Details
#aws_credentials ⇒ Object
60
61
62
63
64
65
|
# File 'lib/rbk/configuration.rb', line 60
def aws_credentials
{
access_key_id: @config['aws_access_key_id'],
secret_access_key: @config['aws_secret_access_key']
}
end
|
#help? ⇒ Boolean
48
49
50
|
# File 'lib/rbk/configuration.rb', line 48
def help?
!!@config['show_help']
end
|
#parse(argv) ⇒ Object
28
29
30
31
|
# File 'lib/rbk/configuration.rb', line 28
def parse(argv)
@parser.parse(argv)
self
end
|
#quiet? ⇒ Boolean
52
53
54
|
# File 'lib/rbk/configuration.rb', line 52
def quiet?
!!@config['quiet']
end
|
#usage ⇒ Object
56
57
58
|
# File 'lib/rbk/configuration.rb', line 56
def usage
@parser.to_s
end
|
#validate ⇒ Object
33
34
35
36
37
38
|
# File 'lib/rbk/configuration.rb', line 33
def validate
invalid_option?(@config['bucket'], 'Missing S3 bucket')
invalid_option?(@config['github_access_token'], 'Missing GitHub access token')
invalid_option?(@config['organization'], 'Missing organization')
self
end
|