namespace :patches do
desc "Run Patches" task :run => [:environment] do if defined?(Apartment) && tenants.present? runner = Patches::TenantRunner else runner = Patches::Runner end if defined?(Sidekiq) && Patches::Config.configuration.use_sidekiq Patches::Worker.perform_async( runner, application_version: Patches::Config.configuration.application_version ) else runner.new.perform end end def tenants ENV['DB'] ? ENV['DB'].split(',').map { |s| s.strip } : Apartment.tenant_names || [] end task :pending => [:environment] do Patches::Pending.new.each do |patch| puts patch end end
end