searchkick.rake
834 Bytes
namespace :searchkick do
desc "reindex model"
task reindex: :environment do
if ENV["CLASS"]
klass = ENV["CLASS"].constantize rescue nil
if klass
klass.reindex
else
abort "Could not find class: #{ENV['CLASS']}"
end
else
abort "USAGE: rake searchkick:reindex CLASS=Product"
end
end
namespace :reindex do
desc "reindex all models"
task all: :environment do
if Rails.respond_to?(:autoloaders) && Rails.autoloaders.zeitwerk_enabled?
# fix for https://github.com/rails/rails/issues/37006
Zeitwerk::Loader.eager_load_all
else
Rails.application.eager_load!
end
Searchkick.models.each do |model|
puts "Reindexing #{model.name}..."
model.reindex
end
puts "Reindex complete"
end
end
end