system_check.rb 501 B

12345678910111213141516171819202122
  1. # frozen_string_literal: true
  2. class Admin::SystemCheck
  3. ACTIVE_CHECKS = [
  4. Admin::SystemCheck::DatabaseSchemaCheck,
  5. Admin::SystemCheck::SidekiqProcessCheck,
  6. Admin::SystemCheck::RulesCheck,
  7. Admin::SystemCheck::ElasticsearchCheck,
  8. ].freeze
  9. def self.perform(current_user)
  10. ACTIVE_CHECKS.each_with_object([]) do |klass, arr|
  11. check = klass.new(current_user)
  12. if check.skip? || check.pass?
  13. arr
  14. else
  15. arr << check.message
  16. end
  17. end
  18. end
  19. end