Move token expiry to a rake task

This commit is contained in:
Tom Hughes 2024-08-08 20:45:10 +01:00
parent 6b179c4e9b
commit d17b5b6d4f
2 changed files with 10 additions and 12 deletions

10
lib/tasks/cleanup.rake Normal file
View file

@ -0,0 +1,10 @@
namespace :db do
desc "Expire old tokens"
task :expire_tokens => :environment do
OauthNonce.where("timestamp < EXTRACT(EPOCH FROM NOW() - INTERVAL '1 day')").delete_all
OauthToken.where("invalidated_at < NOW() - INTERVAL '28 days'").delete_all
RequestToken.where("authorized_at IS NULL AND created_at < NOW() - INTERVAL '28 days'").delete_all
Doorkeeper::AccessGrant.where("revoked_at < NOW() - INTERVAL '28 days' OR (created_at + expires_in * INTERVAL '1 second') < NOW() - INTERVAL '28 days'").delete_all
Doorkeeper::AccessToken.where("revoked_at < NOW() - INTERVAL '28 days' OR (created_at + expires_in * INTERVAL '1 second') < NOW() - INTERVAL '28 days'").delete_all
end
end