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