Status Update: Rails & Cloud
Bob McWhirter
03 February 2009

Since I haven't shipped any bits lately, I figured it was time to at least talk about what I've been doing lately.  (Sacha, are you reading?)

Things that did not involve code include the interview on DZone and bringing Marek on board.

Things that do involve code have been interesting also...

Ruby and JAX-WS

I like the EC2 API, at least as it is expressed through the command-line tools.  On the other-hand, the wire protocol does not elicit joy.  I'm normally a fan of RESTful protocols, but EC2, well, is not.

And since my goal is to make oVirt appear like an EC2 cloud, I'm stuck with implementing the EC2 SOAP API.  With WS-Security bits.  Involving X.509 certificates.

Every time I've looked at the SOAP implementations for Ruby, they seemed lacking.  Particularly once you start involving all the security bits and crypto.  But JBossWS is pretty nice and fancy, supports certificates, message-signing and all that good stuff.  Just adjust a few settings and your API is secure.  Just like EC2.

So far, I've gotten a @WebService that can be backed by Ruby classes.  But that involves some wsdl2java, compilation on the Java side, etc.  Now I'm looking into @WebServiceProvider, which takes a slightly more dynamic approach.  I may end up having to jack in even lower to stand up classes from your RoR app as JAX-WS handlers, though.  But we'll get there.  And ideally, without touching the Java compiler from within your Rails app.  I'm glad to have the deployers framework in Microcontainer.

Also, thanks to David M. Lloyd for helping me understand BER-encoding and other magic involving OpenSSH RSA keypairs.

Ongoing...

Is that an appliance in your pocket?

All of this talk about clouds is awesome.  But it's just an assembly of disk images (or "appliances") ultimately.  USB sticks have a pretty good capacity these days, and appliance images can be somewhat small-ish.  I've been talking to Max Andersen of the JBossTools project, about having a bootable, ready-to-go JBossTools-based appliance on a USB stick.  Fedora, OpenJDK, Eclipse, JBoss Tools.  Plug, boot, go.

Also ongoing...

  • Next JBoss WebServices and Ruby
  • Previous Interview about Rails & Cloud
Copyright 2008-2010 Red Hat, Inc.