Sha256: 64c2cb7f0d87c814aad13478daff8f5ccb9d9f1f315fc9adbdb92c7cb31773ee

Contents?: true

Size: 834 Bytes

Versions: 6

Compression:

Stored size: 834 Bytes

Contents

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

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
searchkick-4.4.0 lib/tasks/searchkick.rake
searchkick-4.3.1 lib/tasks/searchkick.rake
searchkick-4.3.0 lib/tasks/searchkick.rake
searchkick-4.2.1 lib/tasks/searchkick.rake
searchkick-4.2.0 lib/tasks/searchkick.rake
searchkick-4.1.1 lib/tasks/searchkick.rake