[openstack-dev] [tempest] clients/manager in plugins

Ryota Mibu r-mibu at cq.jp.nec.com
Wed Dec 16 11:06:52 UTC 2015


Hi Ghanshyam,



Thanks for your response.

It seems that I'm headed in the right direction.

One more question. - Should we migrate from 'service_client' to 'rest_client' in tempest-lib?



Best regards,
Ryota

> -----Original Message-----
> From: GHANSHYAM MANN [mailto:ghanshyammann at gmail.com]
> Sent: Saturday, December 12, 2015 11:32 AM
> To: OpenStack Development Mailing List (not for usage questions)
> Subject: Re: [openstack-dev] [tempest] clients/manager in plugins
> 
> Hi Ryota,
> 
> That is the one way as you mentioned.
> 
> On Fri, Dec 11, 2015 at 8:15 PM, Ryota Mibu <r-mibu at cq.jp.nec.com> wrote:
> > Hi,
> >
> >
> > This is a question regarding design of clients and managers in a tempest plugin.
> >
> >
> > I'm not familiar with tempest, but it seems that there are the following terms:
> >
> >     Client: client of service or feature (part of service)
> >
> >     ClientManager: having clients which are needed for particular test
> > scenario
> 
> Yes, clients called service clients are those which place request on services and Manager to load those clients and
> make them available for tests cases.
> 
> > According to [1], we are encouraged to have own client in each project repository instead of tempest tree. That
> means we may have to gather clients from other repositories to create a test scenario when it use other services.
> For example, when <project A> and <project B> are out of tempest scope/tree, we have to load client of <project B>
> from its repository in order to create a test scenario under <project A>.
> 
> Yes, Tempest will maintain the service client for 6 core projects (as per Big tent Architecture) and those will be
> available in Tempest-lib as stable interfaces (many of the compute clients are available [4] and other in progress).
> Plugins or any functional tests can use those from Tempest-lib and about other project(other than those 6 which Tempest
> own) clients, yes plugin needs to use from that project repo.
> 
> >
> > If so, I'd like to use tempest.test.BaseTestCase() with my ClientManager which is customized to load clients from
> other repositories out of tempest and my own repository. So, I proposed [2]. But, if there is a better approach to
> do the similar thing, please let me know.
> 
> So existing plugins like Manila etc, instantiate their Manager  in their base test class which is inherited from
> tempest.test.BaseTestCase() Along with that way, your idea of adding option in Tempest base class itelf to give
> flexibility to users to provide Manager class looks good to me as a short term solution.
> Tempest long term solution/goal is to provide the plugin ability for Manager class also and make that available from
> lib. But that is plan and might take time.
> 
> >
> >
> > [1] http://docs.openstack.org/developer/tempest/plugin.html
> > [2] https://review.openstack.org/#/c/255161/
> 
> [3] - https://github.com/openstack/tempest-lib/tree/master/tempest_lib/services
> 
> >
> >
> > Thanks,
> > Ryota
> >
> > -----------------------------------
> > "Ryota Mibu" <r-mibu at cq.jp.nec.com>
> > NEC Corporation
> >
> >
> > ______________________________________________________________________
> > ____ OpenStack Development Mailing List (not for usage questions)
> > Unsubscribe:
> > OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> 
> 
> --
> Regards
> Ghanshyam Mann
> +81-8084200646
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



More information about the OpenStack-dev mailing list