
- Re-factor - Remove code for notifications - Remove addons - Remove travis-core gem. - Ignore logs directory only - Move core tests to spec/lib
34 lines
754 B
Ruby
34 lines
754 B
Ruby
require 'travis/services/base'
|
|
|
|
module Travis
|
|
module Services
|
|
class FindUserAccounts < Base
|
|
register :find_user_accounts
|
|
|
|
def run
|
|
([current_user] + orgs).map do |record|
|
|
::Account.from(record, :repos_count => repos_counts[record.login])
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def orgs
|
|
Organization.where(:login => account_names)
|
|
end
|
|
|
|
def repos_counts
|
|
@repos_counts ||= Repository.counts_by_owner_names(account_names)
|
|
end
|
|
|
|
def account_names
|
|
repos = current_user.repositories
|
|
unless params[:all]
|
|
repos = repos.administratable
|
|
end
|
|
repos.select(:owner_name).map(&:owner_name).uniq
|
|
end
|
|
end
|
|
end
|
|
end
|