FYI: this is related to our IRC discussion earlier. -adrian jclouds
---------- Forwarded message ---------- From: Adrian Cole <[email protected]> Date: Fri, Dec 18, 2009 at 1:25 PM Subject: [compute] profile design and reuse of libcloud names where appropriate To: [email protected] Libcloud: On our compute api, it would make discussions easier to use the same vocab as what is deemed de-facto. I'd suggest apache incubator status of libcloud is sufficient grounds to accept their vocab where appropriate. For this reason, I recommend we use words like "Node" instead of "Server". I've updated our docs accordingly [1] Profiles: Ivan and I had a good chat on #libcloud about profiles and naming. Through discussion, the bottom line is that Profiles are a good way of resolving customer asks, which may use cloud-specific lingo, to generic Image, Size, and Options. They are also a nice way of encapsulating inputs to creation such that they can be persisted for later use. Ex. Profile profile = nodeService.resolve(ami("ami-1fd73376"), instanceType(M1_SMALL), nearRegion(US_EAST)); for (int i=0;i<10;i++) CreateNodeMetadata node = nodeService.createNode(name+i, profile.getImage(), profile.getSize(), profile.getOptions()); With profiles, we can allow sophisticated, provider-specific configuration asks to be accessible to the user, while keeping existing interfaces simple. Let us know your feedback! -Adrian [1] http://code.google.com/p/jclouds/wiki/ComputeDesign
