lib/hieracles/registry.rb in hieracles-0.3.3 vs lib/hieracles/registry.rb in hieracles-0.3.4
- old
+ new
@@ -8,30 +8,37 @@
sub = Regexp.new(".*#{config.classpath.sub(/%s/,'([^/]*)')}")
f.sub(sub, "\\1")
end
end
- def nodes(config)
- Dir.glob(File.join(config.encpath, '*.yaml')).sort.map do |f|
- File.basename(f, '.yaml')
- end
- end
+ def nodes(config)
+ Dir.glob(File.join(config.encpath, '*.yaml')).sort.map do |f|
+ File.basename(f, '.yaml')
+ end
+ end
- def modules(config)
- Dir.glob(File.join(config.modulepath, '*')).sort.map do |f|
- File.basename(f)
- end
- end
+ def modules(config)
+ Dir.glob(File.join(config.modulepath, '*')).sort.map do |f|
+ File.basename(f)
+ end
+ end
def nodes_data(config, env = 'production', reload = false)
@_nodes_data = {} if reload || !@_nodes_data
@_nodes_data[env] ||= Dir.glob(File.join(config.encpath, '*.yaml')).sort.reduce({}) do |a, f|
fqdn = File.basename(f, '.yaml')
a[fqdn] = YAML.load_file(f)['parameters']
a
end
end
-
+ def farms_counted(config, env = 'production')
+ Dir.glob(format(config.classpath, '*')).sort.reduce({}) do |a, f|
+ sub = Regexp.new(".*#{config.classpath.sub(/%s/,'([^/]*)')}")
+ name = f.sub(sub, "\\1")
+ a[name] = nodes_data(config, env).select { |k, v| v['farm'] == name }.length
+ a
+ end
+ end
end
end