diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-07-11 17:25:49 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-11 17:25:49 +0200 |
commit | e6c81a635b99dcec4f8fded00d9451cb876df822 (patch) | |
tree | 37e81b36d0739181bd75c78d0d80a48eb325a2bb /lib | |
parent | f93de3a516d23cddea7cce147d3da3decac85f2f (diff) |
Fix #2848 - Rake task to redownload avatars/headers (#4156)
Can be filtered by a specific domain Resolves #2292
Diffstat (limited to 'lib')
-rw-r--r-- | lib/tasks/mastodon.rake | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/lib/tasks/mastodon.rake b/lib/tasks/mastodon.rake index bd70937e4..b2b352858 100644 --- a/lib/tasks/mastodon.rake +++ b/lib/tasks/mastodon.rake @@ -74,7 +74,7 @@ namespace :mastodon do end namespace :media do - desc 'Removes media attachments that have not been assigned to any status for longer than a day' + desc 'Removes media attachments that have not been assigned to any status for longer than a day (deprecated)' task clear: :environment do # No-op # This task is now executed via sidekiq-scheduler @@ -100,6 +100,18 @@ namespace :mastodon do MediaAttachment.where(file_file_name: nil).where.not(type: :unknown).in_batches.update_all(type: :unknown) Rails.logger.debug 'Done!' end + + desc 'Redownload avatars/headers of remote users. Optionally limit to a particular domain with DOMAIN' + task redownload_avatars: :environment do + accounts = Account.remote + accounts = accounts.where(domain: ENV['DOMAIN']) if ENV['DOMAIN'].present? + + accounts.find_each do |account| + account.reset_avatar! + account.reset_header! + account.save + end + end end namespace :push do @@ -111,7 +123,7 @@ namespace :mastodon do end end - desc 'Re-subscribes to soon expiring PuSH subscriptions' + desc 'Re-subscribes to soon expiring PuSH subscriptions (deprecated)' task refresh: :environment do # No-op # This task is now executed via sidekiq-scheduler @@ -119,13 +131,13 @@ namespace :mastodon do end namespace :feeds do - desc 'Clear timelines of inactive users' + desc 'Clear timelines of inactive users (deprecated)' task clear: :environment do # No-op # This task is now executed via sidekiq-scheduler end - desc 'Clears all timelines' + desc 'Clear all timelines without regenerating them' task clear_all: :environment do Redis.current.keys('feed:*').each { |key| Redis.current.del(key) } end @@ -151,7 +163,7 @@ namespace :mastodon do end end - desc 'List all admin users' + desc 'List e-mails of all admin users' task admins: :environment do puts 'Admin user emails:' puts User.admins.map(&:email).join("\n") |