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