incubator-cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rohit Yadav <bhais...@apache.org>
Subject Re: CloudStack Ruby Client
Date Fri, 25 Jan 2013 21:35:54 GMT
Awesome chip!!!

I've a suggestion: To make automatic wrapping of apis and its usage
you can use api discovery you can get a json (during build time or
release time of the library against a running mgmt server) or can get
it via processing commands.xml from tools/apidoc/target; this json
will have all available apis with their command name, description,
helpdoc, request and response params etc. (related api as well). I bet
you can write a ruby code generator with this approach in less than
100 lines to create api boilerplate classes (the way marvin does it)
:)

I'm doing that and more on cloudmonkey but for runtime and I'll cut a
final stable version based on original design of cloudmonkey on
http://pypi.python.org/pypi/cloudmonkey After which pypi channel would
be only used for official/voted releases.

Regards.
PS. I created my own cloudmonkey distribution channel called
clouddonkey (suggested by my brother, it carries the load :P) where
I'll do my personal releases to share latest/snapshots; (and I checked
clouddonkey is not copyrighted :P)
http://pypi.python.org/pypi/clouddonkey/4.1.0


On Fri, Jan 25, 2013 at 10:53 AM, Chip Childers
<chip.childers@sungard.com> wrote:
> I'm pretty new to Ruby, but I just released a CloudStack ruby client:
> https://rubygems.org/gems/cloudstack_ruby_client
>
> Code is here: https://github.com/chipchilders/cloudstack_ruby_client
>
> Comments and help welcome!
>
> To install:
>   gem install cloudstack_ruby_client
>
>
> Basic usage (the creds are from my devcloud install):
>   require 'cloudstack_ruby_client'
>   URL = 'http://192.168.56.10:8080/client/api/'
>   APIKEY = 'yy0sfCPpyKnvREhgpeIWzXORIIvyteq_iCgFpKXnqpdbnHuoYiK78nprSggG4hcx-hxwW897nU-XvGB0Tq8YFw'
>   SECKEY = 'Pse4fqYNnr1xvoRXlAe8NQKCSXeK_VGdwUxUzyLEPVQ7B3cI1Q7B8jmZ42FQpz2jIICFax1foIzg2716lJFZVw'
>   client = CloudstackRubyClient::Client.new(URL, APIKEY, SECKEY, false)
>   puts client.listNetworkOfferings()

Mime
View raw message