class Google::Auth::ExternalAccount::Credentials

def make_external_account_credentials user_creds

def make_external_account_credentials user_creds
  unless user_creds[:credential_source][:file].nil? && user_creds[:credential_source][:url].nil?
    return Google::Auth::ExternalAccount::IdentityPoolCredentials.new user_creds
  end
  unless user_creds[:credential_source][:executable].nil?
    return Google::Auth::ExternalAccount::PluggableAuthCredentials.new user_creds
  end
  raise INVALID_EXTERNAL_ACCOUNT_TYPE
end