You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
517 B
22 lines
517 B
class MigrateUnavailableInboxes < ActiveRecord::Migration[5.2] |
|
disable_ddl_transaction! |
|
|
|
def up |
|
redis = RedisConfiguration.pool.checkout |
|
urls = redis.smembers('unavailable_inboxes') |
|
|
|
hosts = urls.filter_map do |url| |
|
Addressable::URI.parse(url).normalized_host |
|
end.uniq |
|
|
|
UnavailableDomain.delete_all |
|
|
|
hosts.each do |host| |
|
UnavailableDomain.create(domain: host) |
|
end |
|
|
|
redis.del(*(['unavailable_inboxes'] + redis.keys('exhausted_deliveries:*'))) |
|
end |
|
|
|
def down; end |
|
end
|
|
|