Module: Google::Cloud

Defined in:
lib/google/cloud.rb,
lib/google/cloud/config.rb,
lib/google/cloud/credentials.rb,
lib/google/cloud/core/version.rb

Defined Under Namespace

Modules: Core Classes: Config

Class Method Summary collapse

Class Method Details

.configure {|@config| ... } ⇒ Google::Cloud::Config

Configure the default parameter for Google::Cloud. The values defined on this top level will be shared across all Google::Cloud libraries, which may also add fields to this object or add sub configuration options under this object.

Possible configuration parameters:

  • project_id: The Google Cloud Project ID. Automatically discovered when running from GCP environments.
  • credentials: The service account JSON file path. Automatically discovered when running from GCP environments.
  • on_error: A Proc to be run when an error is encountered during on a background thread. The Proc must take the error object as the single argument.

Yields:

  • (@config)

Returns:



91
92
93
94
95
96
97
# File 'lib/google/cloud.rb', line 91

def self.configure
  @config ||= Config.create

  yield @config if block_given?

  @config
end

.new(project_id = nil, credentials = nil, retries: nil, timeout: nil) ⇒ Google::Cloud

Creates a new object for connecting to Google Cloud.

For more information on connecting to Google Cloud see the Authentication Guide.

Examples:

require "google/cloud"

gcloud  = Google::Cloud.new
datastore = gcloud.datastore
pubsub  = gcloud.pubsub
storage = gcloud.storage

Parameters:

  • project_id (String) (defaults to: nil)

    Project identifier for the service you are connecting to.

  • credentials (String, Hash, Google::Auth::Credentials) (defaults to: nil)

    The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object.

  • retries (Integer) (defaults to: nil)

    Number of times to retry requests on server error. The default value is 3. Optional.

  • timeout (Integer) (defaults to: nil)

    Default timeout to use in requests. Optional.

Returns:



62
63
64
65
66
67
68
69
70
# File 'lib/google/cloud.rb', line 62

def self.new project_id = nil, credentials = nil, retries: nil, timeout: nil
  gcloud = Object.new
  gcloud.instance_variable_set :@project, project_id
  gcloud.instance_variable_set :@keyfile, credentials
  gcloud.instance_variable_set :@retries, retries
  gcloud.instance_variable_set :@timeout, timeout
  gcloud.extend Google::Cloud
  gcloud
end