[openstack-dev] [nova] Averting the Nova crisis by splitting out virt drivers

Daniel P. Berrange berrange at redhat.com
Thu Sep 4 16:19:11 UTC 2014


On Thu, Sep 04, 2014 at 05:11:22PM +0100, Duncan Thomas wrote:
> On 4 September 2014 16:00, Solly Ross <sross at redhat.com> wrote:
> >> My only question is about the need to separate out each virt driver into a separate project, wouldn't you
> >> accomplish a lot of the benefit by creating a single virt project that includes all of the drivers?
> >
> > I don't think there's particularly a *point* to having all drivers in one repo.  Part of code review is looking for code "gotchas", but part of code review is looking for subtle issues that are caused by the very nature of the driver.  A HyperV "core" reviewing a libvirt change should certainly be able to provide the former, but most likely cannot provide the latter to a sufficient degree (if he or she can, then he or she should be a libvirt "core" as well).
> 
> I think that having a shared review team across all of the drivers has
> definite benefits in terms of coherency and consistency - it is very
> easy for experts on one technology to become tunnel-visioned on some
> points and miss the wider, cross project picture. A common drivers
> team is likely to have a broad enough range of opinions to keep things
> healthy, compared to one repo (and team) per driver, and also they are
> able to speak collectively to teh core nova team, which helps set
> priorities there when they need to be influenced on behalf of the
> drivers team.

If people are interested in reviewing all the driver code there's nothing
preventing them doing that. It is easy to setup gerrit to notify you on
changes across many drivers if you have that desire, or to write scripts
to query gerrit too. Realistically though, even today most people working
on a virt driver totally ignore the other virt drivers and so separating
them isn't going to make things significantly worse in that regard.

> TLDR: I don't think there's particularly a point to splitting out the
> drivers into individual repos, and much to be gained from keeping them
> all in one (but still breaking them out of nova)

There's significant benefits in the way we can test and gate changes
by having separate repos. It also ensures that the workload for changes
for one driver don't impact on the workload of changes for another
driver which is a very real problem today. It also ensures that any
new drivers can start off on a level playing field wrt existing drivers
and not have to jump over a huge initial bar to get into the official
repo. So there is a great deal of benefit to having  one repo per
driver.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



More information about the OpenStack-dev mailing list