[openstack-dev] [oslo] Where should utility services be started?

Thierry Carrez thierry at openstack.org
Tue May 7 08:41:42 UTC 2013


Adrian Otto wrote:
> In reference to the Oslo Wiki[1] , in the Incubation section, principle
> number 2:
>     "The API is already in use by a number of OpenStack projects" 
> 
> And in the Incubation section:
>     "The process of developing a new Oslo API begins by taking code
>     which is common to some OpenStack projects and moving it into
>     the oslo-incubator repository."
> 
> Where should cross-project code be incubated in the phase *before* it is
> implemented by multiple projects? The Heat and Nova teams are working
> together on StructuredStateManagement[2] and want to start something
> new, but are struggling to determine where to put it. This is probably
> evolve into an Oslo library, but it's not obvious where it should live
> in the mean time. Should it be a splinter off of Heat? In Nova? Neither
> option seems quite right.

If that's code that would end up being copied in both services, and
there is prior agreement that they will copy it, starting it as an Oslo
library sounds like a possibility to me... Maybe Mark will have another
opinion.

> Have we considered having an OpenStack "Common" service that's designed
> to be a pluggable general purpose service on which multiple
> general-purpose utility services can be hung? I could imagine actually
> putting multiple services in here, such as Heat, Convection[3]
> (using StructuredStateManagement), EventScheduler[4], etc. 
> 
> Ideally I'm looking for a project that's central like Oslo, but intended
> for hosting API controlled services, and that welcomes cooperative
> development from multiple teams to make a new modular code base that
> serves multiple projects in a way that it can be safely treated as a
> critical dependency.

Not really a big fan of a general-purpose service that would have
utility plug-ins that would make it do anything. That sounds like a way
to workaround scope control and proper incubation/graduation. I'd rather
have several services reusing oslo common service code, that start out
in stackforge, then may file for incubation and graduate as an
integrated project. You don't have to already be an integrated project
to start cooperative development.

-- 
Thierry Carrez (ttx)
Chair, OpenStack Technical Committee



More information about the OpenStack-dev mailing list