]> cat aescling's git repositories - mastodon.git/commitdiff
Add scheduled worker to purge old user IPs (#4951)
authorsdukhovni <dukhovni@mit.edu>
Thu, 14 Sep 2017 20:26:38 +0000 (16:26 -0400)
committerEugen Rochko <eugen@zeonfederated.com>
Thu, 14 Sep 2017 20:26:38 +0000 (22:26 +0200)
* Add scheduled worker to purge old user IPs

* Use ruby 1.9 hash syntax

app/workers/scheduler/ip_cleanup_scheduler.rb [new file with mode: 0644]
config/sidekiq.yml

diff --git a/app/workers/scheduler/ip_cleanup_scheduler.rb b/app/workers/scheduler/ip_cleanup_scheduler.rb
new file mode 100644 (file)
index 0000000..9f1593c
--- /dev/null
@@ -0,0 +1,12 @@
+# frozen_string_literal: true
+require 'sidekiq-scheduler'
+
+class Scheduler::IpCleanupScheduler
+  include Sidekiq::Worker
+
+  def perform
+    time_ago = 5.years.ago
+    SessionActivation.where('updated_at < ?', time_ago).destroy_all
+    User.where('last_sign_in_at < ?', time_ago).update_all(last_sign_in_ip: nil)
+  end
+end
index a502f55933babac292dccc6fc5c3b528501ee2c6..5e4310e7ed3dabfd3797b5c2c12d55cd717f45de 100644 (file)
@@ -24,3 +24,6 @@
   subscriptions_cleanup_scheduler:
     cron: '2 2 * * 0'
     class: Scheduler::SubscriptionsCleanupScheduler
+  ip_cleanup_scheduler:
+    cron: '0 4 * * *'
+    class: Scheduler::IpCleanupScheduler