Project

zcloudjp

0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
A Ruby interface to the Z Cloud API.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.3
>= 0
>= 0

Runtime

 Project Readme

Zcloudjp

Build Status
A Ruby interface to the Z Cloud API.

Installation

Add this line to your application's Gemfile:

gem 'zcloudjp'

And then execute:

$ bundle

Or install it yourself as:

$ gem install zcloudjp

Usage

$ export ZCLOUDJP_API_KEY=abc
$ pry
> require 'zcloudjp'
=> true
> @client = Zcloudjp.new
.. snip ..
> @machine = @client.machine.create(dataset: "sdc:sdc:base64:13.1.0", package: "Small_1GB")
=> #<OpenStruct request_options={:base_uri=>"https://my.z-cloud.jp", :headers=>{"X-API-KEY"=>"abc", "Content-Type"=>"application/json; charset=utf-8", "Accept"=>"application/json", "User-Agent"=>"zcloudjp-gem/0.1.0 (x86_64-darwin11.4.2) ruby/1.9.3"}, :body=>"{\"dataset\":\"sdc:sdc:base64:13.1.0\",\"package\":\"Small_1GB\"}"}, id="9796d336-f249-440f-a440-454fab97d602", name=nil, type="smartmachine", state="provisioning", dataset="sdc:sdc:base64:13.1.0", memory=1024, disk=30720, ips=["192.168.137.196"], metadata={}, created="2013-07-09T06:08:46+00:00", updated="2013-07-09T06:08:47+00:00", account_id=723, os="SmartOS", kind="SmartOS", package="Small_1GB", subdomain=nil, alert=nil>
> @machine.metadata.list
=> {"metadata"=> {}}
> @machine.metadata.create(nick: 'fuubar')
=> {"metadata"=> {
        "nick"=>"fuubar"}}
> @machine.state
=> "running"
> @machine.stop
> @machine.reload.state
=> "stopped"
> @machine.delete

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request