@@ -8,15 +8,15 @@ class Config
8
8
def initialize ( config )
9
9
fail unless config
10
10
yaml = YAML . load_file ( File . join ( '/etc' , 'uphold' , 'conf.d' , config ) )
11
+ yaml . merge! ( file : File . basename ( config , '.yml' ) )
11
12
@yaml = Config . deep_convert ( yaml )
12
13
fail unless valid?
13
- logger . info "Loaded config '#{ @yaml [ :name ] } ' from '#{ config } '"
14
+ logger . debug "Loaded config '#{ @yaml [ :name ] } ' from '#{ config } '"
14
15
@yaml = supplement
15
16
end
16
17
17
18
def valid?
18
19
valid = true
19
- valid = false if @yaml [ :enabled ] != true
20
20
valid = false unless Config . engines . any? { |e | e [ :name ] == @yaml [ :engine ] [ :type ] }
21
21
valid = false unless Config . transports . any? { |e | e [ :name ] == @yaml [ :transport ] [ :type ] }
22
22
valid
@@ -28,16 +28,27 @@ def supplement
28
28
@yaml
29
29
end
30
30
31
+ def self . load_configs
32
+ Dir [ '/etc/uphold/conf.d/*.yml' ] . sort . map do |file |
33
+ new ( File . basename ( file ) ) . yaml
34
+ end
35
+ end
36
+
31
37
def self . load_global
32
38
yaml = YAML . load_file ( File . join ( '/' , 'etc' , 'uphold' , 'uphold.yml' ) )
33
39
yaml = deep_convert ( yaml )
34
40
yaml [ :log_level ] ||= 'INFO'
35
41
yaml [ :docker_url ] ||= 'unix:///var/run/docker.sock'
42
+ yaml [ :docker_container ] ||= 'uphold-tester'
43
+ yaml [ :docker_tag ] ||= 'latest'
44
+ yaml [ :docker_mounts ] ||= [ ]
45
+ yaml [ :config_path ] ||= '/etc/uphold'
46
+ yaml [ :docker_log_path ] ||= '/var/log/uphold'
36
47
yaml
37
48
end
38
49
39
50
def self . load_engines
40
- [ Dir [ "#{ @root } /lib/engines/*.rb" ] , Dir [ '/etc/uphold/engines/*.rb' ] ] . flatten . uniq . sort . each do |file |
51
+ [ Dir [ "#{ ROOT } /lib/engines/*.rb" ] , Dir [ '/etc/uphold/engines/*.rb' ] ] . flatten . uniq . sort . each do |file |
41
52
require file
42
53
basename = File . basename ( file , '.rb' )
43
54
add_engine name : basename , klass : Object . const_get ( "Uphold::Engines::#{ File . basename ( file , '.rb' ) . capitalize } " )
@@ -56,7 +67,7 @@ def self.add_engine(engine)
56
67
end
57
68
58
69
def self . load_transports
59
- [ Dir [ "#{ @root } /lib/transports/*.rb" ] , Dir [ '/etc/uphold/transports/*.rb' ] ] . flatten . uniq . sort . each do |file |
70
+ [ Dir [ "#{ ROOT } /lib/transports/*.rb" ] , Dir [ '/etc/uphold/transports/*.rb' ] ] . flatten . uniq . sort . each do |file |
60
71
require file
61
72
basename = File . basename ( file , '.rb' )
62
73
add_transport name : basename , klass : Object . const_get ( "Uphold::Transports::#{ File . basename ( file , '.rb' ) . capitalize } " )
0 commit comments