Method: Google::Auth.get_application_default

Defined in:
lib/googleauth/application_default.rb

.get_application_default(scope = nil, options = {}) ⇒ Object

Obtains the default credentials implementation to use in this environment.

Use this to obtain the Application Default Credentials for accessing Google APIs. Application Default Credentials are described in detail at goo.gl/IUuyuX.

If supplied, scope is used to create the credentials instance, when it can be applied. E.g, on google compute engine and for user credentials the scope is ignored.



56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/googleauth/application_default.rb', line 56

def get_application_default(scope = nil, options = {})
  creds = DefaultCredentials.from_env(scope) ||
          DefaultCredentials.from_well_known_path(scope) ||
          DefaultCredentials.from_system_default_path(scope)
  return creds unless creds.nil?
  unless GCECredentials.on_gce?(options)
    # Clear cache of the result of GCECredentials.on_gce?
    GCECredentials.unmemoize_all
    raise NOT_FOUND_ERROR
  end
  GCECredentials.new
end