Our policy is to use the native bindings for a particular provider whenever available to expose the maximum number of knobs and switches.
libcloud works when something else better doesn’t exist in Python, or if that’s the primary way the community around that particular provider does things.