You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jclouds.apache.org by Andrew Phillips <ap...@qrmedia.com> on 2014/11/13 00:43:58 UTC

Notes from a jclouds user chat with Mesosphere

Here the notes from a very informative call I had with Michael Jin  
from Mesosphere, who kindly took the time to share feedback and  
suggestions about how to improve (working with) jclouds.

Longer notes are below, but the TL;DR for me was:

1. Easier ability to hook in custom failure handling that a) can  
access the underlying error to perform provider-specific recovery b)  
can also be triggered if e.g. a node is "dud"  (for some user-defined  
definition of "dud") even if the API isn't erroring out
2. The time between submitting a PR and having that available in a  
stable version (i.e. not a snapshot) needs to be much shorter. It's  
not clear which part is most in need of improvement - the time to get  
a PR merged, or the time for it to appear in a stable release - but  
from a user's perspective it's the end-to-end time that matters
3. We should be trying to give as much Guava flexibility as possible:  
users should not be stuck on an old branch to use older Guava  
versions, and should be able to use new branches with versions of  
Guava newer than on the branch

@Michael: thanks for this, and please correct/amend where necessary!

@all: if you're aware of other jclouds end users who'd be interested  
in similarly sharing their thoughts, please let me know!

Regards

ap

Full notes:

* working on GCE and DigitalOcean (dropped AWS for now)
* need to support potential users who can't try different clouds
* cloud-abstraction library minimizes the amount of code we need
* not too many provider-specific calls but finding differences (e.g. auth)
* lots of "build template" and "runNodesInGroup"

Specific points:
* exception handling (barfs from the provider) - need to have more  
ability to be explicit about retry handling and there isn't much  
visibility into the actual exception
* #1 pain point
* being able to override retry handling at the context level?
* ...or at the call level?
* What if the provider is "lying" to me (i.e. no Exception being  
thrown) - can I have retry logic for "semantic" problems?

* would be nice if provider coverage would be quicker
* taking longer than expected to merge back upstream
* ideally, should be a) included in the code and b) available in a  
stable release "reasonably soon"
* working off master (possibly related to Guava)
* need to verify whether it's possible to use 1.8.x and override the  
Guava version if needed