mirror of
https://github.com/manyfold3d/manyfold.git
synced 2026-10-22 03:32:18 -05:00
40 lines
1.9 KiB
Ruby
40 lines
1.9 KiB
Ruby
Rails.application.config.after_initialize do
|
|
# Update site settings from old values
|
|
SiteSettings.default_viewer_role = "private" if SiteSettings.default_viewer_role == ""
|
|
|
|
# Transfer path data from settings to libraries
|
|
if Rails.const_defined?(:Server)
|
|
deprecated_folder_settings = {
|
|
path_template: SiteSettings.remove_field("model_path_template"),
|
|
parse_metadata_from_path: SiteSettings.remove_field("parse_metadata_from_path"),
|
|
safe_folder_names: SiteSettings.remove_field("safe_folder_names")
|
|
}.compact
|
|
Library.find_each do |library|
|
|
library.assign_attributes(deprecated_folder_settings)
|
|
library.save(validate: false)
|
|
end
|
|
end
|
|
|
|
# Attempt to connect to Redis first before queueing, and fail early
|
|
Sidekiq.redis { |conn| conn.info }
|
|
# Queue upgrade jobs if Redis is good to go
|
|
# and if in server mode
|
|
if Rails.const_defined?(:Server)
|
|
Upgrade::GenerateSlugsJob.set(queue: :high).perform_later(Model)
|
|
Upgrade::GenerateSlugsJob.set(queue: :high).perform_later(Creator)
|
|
Upgrade::GenerateSlugsJob.set(queue: :high).perform_later(Collection)
|
|
Upgrade::FixStaleAttachmentDataJob.set(queue: :upgrade).perform_later
|
|
Upgrade::FixMimeTypes.set(queue: :high).perform_later
|
|
Upgrade::FixNilFileSizeValues.set(queue: :upgrade).perform_later
|
|
Upgrade::BackfillDataPackages.set(queue: :upgrade).perform_later
|
|
Upgrade::DisambiguateUsernamesJob.set(queue: :upgrade).perform_later
|
|
Upgrade::UpdateActorsJob.set(queue: :upgrade).perform_later
|
|
Upgrade::CreateSpecialListsJob.set(queue: :upgrade).perform_later
|
|
Upgrade::FixParentCollections.set(queue: :upgrade).perform_later
|
|
Upgrade::PruneOrphanedProblems.set(queue: :upgrade).perform_later
|
|
Upgrade::BackfillImageDerivatives.perform_later if SiteSettings.generate_image_derivatives
|
|
Upgrade::BackfillModelRenders.perform_later if SiteSettings.generate_model_renders
|
|
end
|
|
rescue RedisClient::CannotConnectError
|
|
end
|