Cloud Storage API - Module Google::Cloud (v1.45.0)

Reference documentation and code samples for the Cloud Storage API module Google::Cloud.

Methods

.storage

def self.storage(project_id = nil, credentials = nil, scope: nil, retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil, max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil, upload_chunk_size: nil) -> Google::Cloud::Storage::Project

Creates a new object for connecting to the Storage service. Each call creates a new connection.

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

Parameters
  • project_id (String) — Project identifier for the Storage service you are connecting to. If not present, the default project for the credentials is used.
  • credentials (String, Hash, Google::Auth::Credentials) — The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object. (See Storage::Credentials)
  • scope (String, Array<String>) (defaults to: nil)

    The OAuth 2.0 scopes controlling the set of resources and operations that the connection can access. See Using OAuth 2.0 to Access Google APIs.

    The default scope is:

    • https://www.googleapis.com/auth/devstorage.full_control
  • retries (Integer) (defaults to: nil) — Number of times to retry requests on server error. The default value is 3. Optional.
  • max_elapsed_time (Integer) (defaults to: nil) — Total time in seconds that requests are allowed to keep being retried.
  • base_interval (Float) (defaults to: nil) — The initial interval in seconds between tries.
  • max_interval (Integer) (defaults to: nil) — The maximum interval in seconds that any individual retry can reach.
  • multiplier (Integer) (defaults to: nil) — Each successive interval grows by this factor. A multipler of 1.5 means the next interval will be 1.5x the current interval.
  • timeout (Integer) (defaults to: nil) — (default timeout) The max duration, in seconds, to wait before timing out. Optional. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
  • open_timeout (Integer) (defaults to: nil) — How long, in seconds, before failed connections time out. Optional.
  • read_timeout (Integer) (defaults to: nil) — How long, in seconds, before requests time out. Optional.
  • send_timeout (Integer) (defaults to: nil) — How long, in seconds, before receiving response from server times out. Optional.
  • upload_chunk_size (Integer) (defaults to: nil) — The chunk size of storage upload, in bytes. The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload the complete file regardless of size, pass 0 as the chunk size.
Example
require "google/cloud/storage"

storage = Google::Cloud.storage "my-project",
                         "/path/to/keyfile.json"

bucket = storage.bucket "my-bucket"
file = bucket.file "path/to/my-file.ext"

#storage

def storage(scope: nil, retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil, max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil, upload_chunk_size: nil) -> Google::Cloud::Storage::Project

Creates a new object for connecting to the Storage service. Each call creates a new connection.

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

Parameters
  • scope (String, Array<String>) (defaults to: nil)

    The OAuth 2.0 scopes controlling the set of resources and operations that the connection can access. See Using OAuth 2.0 to Access Google APIs.

    The default scope is:

    • https://www.googleapis.com/auth/devstorage.full_control
  • retries (Integer) (defaults to: nil) — Number of times to retry requests on server error. The default value is 3. Optional.
  • max_elapsed_time (Integer) (defaults to: nil) — Total time in seconds that requests are allowed to keep being retried.
  • base_interval (Float) (defaults to: nil) — The initial interval in seconds between tries.
  • max_interval (Integer) (defaults to: nil) — The maximum interval in seconds that any individual retry can reach.
  • multiplier (Integer) (defaults to: nil) — Each successive interval grows by this factor. A multipler of 1.5 means the next interval will be 1.5x the current interval.
  • timeout (Integer) (defaults to: nil) — (default timeout) The max duration, in seconds, to wait before timing out. Optional. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol.
  • open_timeout (Integer) (defaults to: nil) — How long, in seconds, before failed connections time out. Optional.
  • read_timeout (Integer) (defaults to: nil) — How long, in seconds, before requests time out. Optional.
  • send_timeout (Integer) (defaults to: nil) — How long, in seconds, before receiving response from server times out. Optional.
  • upload_chunk_size (Integer) (defaults to: nil) — The chunk size of storage upload, in bytes. The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload the complete file regardless of size, pass 0 as the chunk size.
Examples
require "google/cloud"

gcloud  = Google::Cloud.new
storage = gcloud.storage
bucket = storage.bucket "my-bucket"
file = bucket.file "path/to/my-file.ext"

The default scope can be overridden with the scope option:

require "google/cloud"

gcloud  = Google::Cloud.new
readonly_scope = "https://www.googleapis.com/auth/devstorage.read_only"
readonly_storage = gcloud.storage scope: readonly_scope