[et-mgmt-tools] Virt-Manager: Supporting additional para-virtual OS's

Daniel P. Berrange berrange at redhat.com
Sat Dec 1 17:10:44 UTC 2007


On Fri, Nov 30, 2007 at 02:57:16PM +0000, Daniel P. Berrange wrote:
> On Thu, Nov 29, 2007 at 08:14:50PM -0800, Robert Nelson wrote:
> > Daniel P. Berrange wrote:
> > >>I spent some time reworking the virtinst code to support OpenSolaris and 
> > >>make it much easier to support additional OSes.  I've attached the patch 
> > >>file to get some feedback on the work so far.
> > >>    
> > >
> > >Thanks for this. Took me a little while to get to grips with it, but I
> > >like the resulting structure.  I'm going todo  a few tests and if it
> > >works I'll commit it to the repo.
> > >
> > >BTW, for any large patches in the future, its handy for review if you
> > >do separate patches  for re-factoring existing code, vs adding new
> > >capabilities. It would have made it easier to review if the splitting
> > >up of the DistroManager.py file were a simple no-functional-change
> > >refactoring. Also helps people browsing the SCM history in the future
> > >to distinguish the changes. No need to change this existing patch 
> > >though, I'll just add as is...
> > 
> > Please hold off on committing this patch.  I have an updated and better 
> > version coming shortly.  I'll post it as two patches to make the SCM 
> > history more readable.  I'll also post it to a new thread.
> 
> So it turned out to be a little more complicated than I expected. At first
> I liked the idea of having OSDistro create & use the ImageFetcher class
> directly, however, there are circumstances where we need to use the OSDistro
> class without the ImageFetcher, so this dependancy causes problems.
> 
> Second, the FullVirtGuest/ParaVirtGuest classes now call into the installer
> class  to get the disk target - this is a problem because this code is only
> relevant for the DistroInstaller class - the ImageInstaller works in a
> different way.
> 
> Really, theFullVirt/ParaVirt guest class should not try todo any assignement
> of disk targets at all. The 'prepare' method fo the DistroInstaller class
> should contain the code to assign disk targets directly. This simplifies 
> the get_disk_xml methods in the Full/ParaVirtGuest  classes, and avoids
> the hard dependancy.
> 
> So, in the end I just committed two small parts. I pulled the ImageFetcher
> classes out into a separate python module, and pulled the OSDistro 
> classes out into a separate python module. So just 2 no-functional-change
> refactorings for now.

I've also just commited the 'LocalImageFetcher' and the modifications to
the Guest.py class to catch exceptions when looking up guests for the
disk check since they're both worthwhile changes.


Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 




More information about the et-mgmt-tools mailing list