At present, the only way to make the novaclient Python API work with keystone v3 is to construct a keystoneclient Session object and pass it to novaclient Client when creating the client object.
Note that you must create a Session object and pass it to novaclient.Client(session=<session object>) when creating the novaclient object. If you don't, novaclient will fall back on its own code for keystone auth and will NOT work with keystone v3."
At present, the only way to make the novaclient Python API work with keystone v3 is to construct a keystoneclient Session object and pass it to novaclient Client when creating the client object.
From comment #11 on bug 1522402:
"http:// docs.openstack. org/developer/ python- novaclient/ api.html# usage
Note that you must create a Session object and pass it to novaclient. Client( session= <session object>) when creating the novaclient object. If you don't, novaclient will fall back on its own code for keystone auth and will NOT work with keystone v3."