Skip to content

Groovenauts' wrapper library for Google Cloud Storage with google-api-ruby-client.

License

Notifications You must be signed in to change notification settings

minimum2scp/gcs-ruby

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gcs-ruby

Build Status

Groovenauts' wrapper library for Google Cloud Storage with google-api-ruby-client.

Installation

Add this line to your application's Gemfile:

gem 'gcs'

And then execute:

$ bundle

Or install it yourself as:

$ gem install gcs

Usage

gcs = Gcs.new(email_address, private_key)

# get bucket list
gcs.bucket(project_id)

# get object list
gcs.list_objects("myBucket", prefix: "path/to/subdir", max_results: 1000)

# get object metadata
get_object "myBucket", "myObject"
get_object "gs://myBucket/myObject"

# download object content
io = StringIO.new
get_object "myBucket", "myObject", download_dest: io
get_object "gs://myBucket/myObject", download_dest: io

# delete object
gcs.delete_object("myBucket", "myObject")
gcs.delete_object("gs://myBucket/myObject")

# create new object
io = StringIO.new("Hello, World!\")
gcs.insert_object("myBucket", "myObject", io)

# copy recursively
gcs.copy_tree("gs://myBucket1/src", "gs://myBucket2/dest")

# delete recursively
gcs.remove_tree("gs://myBucket/dir")

# read object content with size limitation
gcs.read_partial("gs://myBucket/myObject", limit: 1024) # => read first part of object at least 1024 bytes.
gcs.read_partial("myBucket", "myObjet", limit: 1024)
gcs.read_partial("gs://myBucket/myObject", limit: 1024, trim_after_last_delimiter: "\n") #=> remove substr after last "\n"

About

Groovenauts' wrapper library for Google Cloud Storage with google-api-ruby-client.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 98.5%
  • Shell 1.5%