I don't know too much about libcloud in particular, but whenever I see an abstraction that tries to capture different clouds, different OSes, different languages, whatever, I worry it does a lot of things, but few things well. It's hard to capture all these complexities.
Whatever happened to libcloud and the other abstraction layers that made workloads portable across hyperscalers?