Gobbler Ruby SDK

August 23, 2013
gobbler ruby

A few weeks ago I wrote and released a Ruby SDK around the publically availavle (but not so well documented) APIs that are available at Gobbler. My goals were to get more experience with writing an SDK, as well as give people (myself included) easier programatic access to the information that we store in Gobbler accounts.

I modeled the gem largley after Amazon’s aws-sdk since I often use that and like how they structured it.

The source is available at Github and I will definitely look at any issues created there or pull requests for improvements.

Community

If you are interested in developing using the Gobbler API and/or this SDK, please consider joining the Gobbler Hackers Facebook group that we put together to communicate. Feel free to get in touch there or to me directly if you have any questions, issues, comments, etc..

I am a very big believer in open source software and sharing code, so any work that goes towards the goal of an open, developer-friendly community around Gobbler, I am all for it.

Installation

Installation is easy, just use the standard:

  gem install gobbler

Usage

Here is a screencast of some basic functions of the gem:

Example Code

Here are the basic examples from the README.md

  require 'gobbler'

  ## Set up authentication and sign in
  Gobbler.config(email: "...", password: "...")

  ## Get the high-level metrics for your account
  puts Gobbler::Dashboard.list

  ## Get a list of all project names
  puts Gobbler.projects.collect(&:name)

  ## Get a list of all files in a project
  project = Gobbler.projects.first
  checkpoint = project.last_checkpoint

  checkpoint.assets.each do |asset|
    puts asset["relative_path"]
  end

  ## Get a list of all machines that you have signed into gobbler with
  puts Gobbler.machines

  ## Get a list of the cities that each of your drives was last seen in
  Gobbler.volumes.each do |volume|
    puts "#{volume.volume_name} : #{volume.city}"
  end

Comments