2021-04-03 12:12:30 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class Admin::SystemCheck
|
|
|
|
ACTIVE_CHECKS = [
|
|
|
|
Admin::SystemCheck::DatabaseSchemaCheck,
|
|
|
|
Admin::SystemCheck::SidekiqProcessCheck,
|
|
|
|
Admin::SystemCheck::RulesCheck,
|
2022-03-25 20:00:59 +00:00
|
|
|
Admin::SystemCheck::ElasticsearchCheck,
|
2021-04-03 12:12:30 +00:00
|
|
|
].freeze
|
|
|
|
|
2022-07-05 00:41:40 +00:00
|
|
|
def self.perform(current_user)
|
2021-04-03 12:12:30 +00:00
|
|
|
ACTIVE_CHECKS.each_with_object([]) do |klass, arr|
|
2022-07-05 00:41:40 +00:00
|
|
|
check = klass.new(current_user)
|
2021-04-03 12:12:30 +00:00
|
|
|
|
2022-07-05 00:41:40 +00:00
|
|
|
if check.skip? || check.pass?
|
2021-04-03 12:12:30 +00:00
|
|
|
arr
|
|
|
|
else
|
|
|
|
arr << check.message
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|