diff options
Diffstat (limited to 'lib/health_checks/health_checks.rb')
-rw-r--r-- | lib/health_checks/health_checks.rb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/health_checks/health_checks.rb b/lib/health_checks/health_checks.rb new file mode 100644 index 000000000..6f0c9de8e --- /dev/null +++ b/lib/health_checks/health_checks.rb @@ -0,0 +1,37 @@ +require 'health_checkable' + +Dir[File.dirname(__FILE__) + '/checks/*.rb'].each do |file| + require file +end + +module HealthChecks + extend self + + def all + @checks ||= [] + end + + def add(check) + if assert_valid_check(check) + all << check + check + else + false + end + end + + def each(&block) + all.each(&block) + end + + def ok? + all.all? { |check| check.ok? } + end + + private + + def assert_valid_check(check) + check.respond_to?(:check) + end + +end |