2021-04-03 23:12:30 +11:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class Admin::SystemCheck
|
|
|
|
ACTIVE_CHECKS = [
|
2023-09-02 01:47:07 +10:00
|
|
|
Admin::SystemCheck::SoftwareVersionCheck,
|
2023-03-17 08:47:01 +11:00
|
|
|
Admin::SystemCheck::MediaPrivacyCheck,
|
2021-04-03 23:12:30 +11:00
|
|
|
Admin::SystemCheck::DatabaseSchemaCheck,
|
|
|
|
Admin::SystemCheck::SidekiqProcessCheck,
|
|
|
|
Admin::SystemCheck::RulesCheck,
|
2022-03-26 07:00:59 +11:00
|
|
|
Admin::SystemCheck::ElasticsearchCheck,
|
2021-04-03 23:12:30 +11:00
|
|
|
].freeze
|
|
|
|
|
2022-07-05 10:41:40 +10:00
|
|
|
def self.perform(current_user)
|
2021-04-03 23:12:30 +11:00
|
|
|
ACTIVE_CHECKS.each_with_object([]) do |klass, arr|
|
2022-07-05 10:41:40 +10:00
|
|
|
check = klass.new(current_user)
|
2021-04-03 23:12:30 +11:00
|
|
|
|
2022-07-05 10:41:40 +10:00
|
|
|
if check.skip? || check.pass?
|
2021-04-03 23:12:30 +11:00
|
|
|
arr
|
|
|
|
else
|
|
|
|
arr << check.message
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|