[openstack-dev] [openstackclient][openstacksdk] why does openstackclient rely on openstacksdk for get a network client

李健 zijian1012 at 163.com
Tue Jun 19 16:15:30 UTC 2018


Hello everyone
---------------
CentOS Linux release 7.3.1611
OpenStack Version: Newton
# rpm -qa | egrep "(openstacksdk|openstackclient)"
python-openstackclient-3.2.1-1.el7.noarch
python2-openstacksdk-0.9.5-1.el7.noarch
----------------
The openstack CLI is implemented by python-openstackclient. 
In the python-openstackclient package, the function make_client(instance) is used to obtain the client for each service (openstackclient/xxx/client.py), I noticed that almost all core services are import their own python2-xxxclient to get the client, for example:
image/client.py --> import glanceclient.v2.client.Client
compute/client.py --> import novaclient.client
volume/client.py --> import cinderclient.v2.client.Client


But only the network service is import openstacksdk to get the client, as follows:
network/client.py --> import openstack.connection.Connection


So, my question is, why does the network service not use the python2-neutronclient to get the client like other core projects, but instead uses another separate project(openstacksdk)?  
My personal opinion, openstacksdk is a project that can be used independently, it is mainly to provide a unified sdk for developers, so there should be no interdependence between python-xxxclient and openstacksdk, right? 


For any help, thks

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20180620/b5ba9890/attachment.html>


More information about the OpenStack-dev mailing list