Add tootctl accounts follow ACCT

Fix #9369
This commit is contained in:
Eugen Rochko 2018-12-03 01:24:30 +01:00
parent 2df5ef18ae
commit 1a611c9b92

View File

@ -300,6 +300,36 @@ module Mastodon
end end
end end
desc 'follow ACCT', 'Make all local accounts follow account specified by ACCT'
long_desc <<-LONG_DESC
Make all local accounts follow an account specified by ACCT. ACCT can be
a simple username, in case of a local user. It can also be in the format
username@domain, in case of a remote user.
LONG_DESC
def follow(acct)
target_account = ResolveAccountService.new.call(acct)
processed = 0
failed = 0
if target_account.nil?
say("Target account (#{acct}) could not be resolved", :red)
exit(1)
end
Account.local.without_suspended.find_each do |account|
begin
FollowService.new.call(account, target_account)
processed += 1
say('.', :green, false)
rescue
failed += 1
say('.', :red, false)
end
end
say("OK, created follow relations for #{processed} accounts, skipped #{failed}", :green)
end
private private
def rotate_keys_for_account(account, delay = 0) def rotate_keys_for_account(account, delay = 0)