Sha256: 3bfb572ebe4eb5e4564d5be0a107fbcc21b1c530c0799704fc8f167a411ff151
Contents?: true
Size: 895 Bytes
Versions: 14
Compression:
Stored size: 895 Bytes
Contents
module BridgeCache::Jobs class ImportData < ActiveJob::Base include BridgeCache::Utils::WorkerHelper queue_as :default def perform(account_settings, chain = []) account_settings = account_settings.with_indifferent_access remote_data = BridgeBlueprint::RemoteData.new(account_settings[:url], account_settings[:api_key], account_settings[:api_secret]) Dir.mktmpdir do |dir| path = "#{dir}/data_dump" remote_data.store_file(path) import = BridgeBlueprint::DataDump.new(path) BridgeCache.resolved_models(account_settings[:is_subaccount]).each do |model| ids = [] ids << BridgeCache::Plugins::CSVDump.bulk_import(import, model) BridgeCache::Jobs::CleanupJob.set(queue: queue_name).perform_later(model, ids) end end BridgeCache::Utils::WorkerHelper.invoke_next(chain) end end end
Version data entries
14 entries across 14 versions & 1 rubygems