[openstack-dev] [ironic][python-ironicclient][keystoneauth] Getting rid of a custom HTTPClient implementation

Vladyslav Drok vdrok at mirantis.com
Fri Jul 21 18:09:37 UTC 2017


Greetings!

I have a patch [0] to deprecate the custom HTTPClient implementation that
we have in python-ironicclient. Currently it is used when the 'ironic'
command is issued in a standalone mode, that is, with '--ironic-url' and
'--os-auth-token' parameters, or when a client is instantiated through the
following module [1] directly without passing the session object, or even
directly calling HTTPClient constructor at [2]. In other cases,
keystoneauth's SessionClient derivative object is used. [0] will basically
substitute the HTTPClient with the SessionClient (by using the
'admin_token' auth plugin). It seems like a breaking change, as most likely
some HTTP error codes and exceptions thrown may be different, so I think
we'll need the major client library version bump. We'll also make it clear
in the docs that the only "true" way for instantiating the client is
through 'get_client' method in [3].

After that, we'll need to remove the HTTPClient class completely, and here
a question is, whether we should have another major version bump? Or can we
remove it right away, and single major version bump should be enough? (as
the HTTPClient defined in [2] was not something we advertised as a part of
our public python API)

Any suggestions welcome :)

-Vlad

[0] https://review.openstack.org/359061
[1]
https://github.com/openstack/python-ironicclient/blob/master/ironicclient/v1/client.py
[2]
https://github.com/openstack/python-ironicclient/blob/master/ironicclient/common/http.py
[3]
https://github.com/openstack/python-ironicclient/blob/master/ironicclient/client.py
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170721/4fdad0cb/attachment.html>


More information about the OpenStack-dev mailing list