[Libvir] [RFC]OpenVZ XML def

Richard W.M. Jones rjones at redhat.com
Thu Jul 5 10:15:21 UTC 2007


Shuveb Hussain wrote:
> Hi Daniel,
> 
>>   Oh at the C level, definitely ! The python layer is really only a 
>> language
>> binding wrapper and should remain that way ! Even if we fork as a new 
>> process
>> the python side of libvirt is packaged separately, and really the core 
>> should
>> be written in C, this would also allow to merge back your code in the 
>> existing
>> daemon code if needed.
> 
> I understand the Python bindings part. I was wondering if the daemon
> itself could be written in Python, since I have to deal with a lot of
> text parsing from the OpenVZ utils. The LibVirt part that will talk to
> the daemon over the proxy/pipe code will anyways have to be C.

As I said:

> I'm a big advocate of using a sane language instead of C, but libvirt is written in C for better or worse. 

Can you give an example of the kind of text processing which you need to do?

I assume that this is just parsing the output of the OpenVZ command line 
utilities, or are there other things that need to be parsed?  We can 
definitely help in this area.

Writing a separate Python daemon has several problems:
(1) It introduces a dependency on Python for base libvirt.[*]
(2) You have to have a protocol to talk over the pipe, and it's not 
clear what that would be.
(3) You have to create, manage and tear down the pipe and subprocess. 
Error handling in particular is complicated.  What happens if the 
subprocess goes away suddenly?  Or if you can't fork?
(4) Pipes / subprocesses / Python don't work well on Windows, not that I 
personally care much about that, but we shouldn't exclude the 
possibility that people will wish to run libvirt on Windows.

Rich.

[*] Although currently the Python bindings are distributed with libvirt, 
I'd like to see them broken out as a separate package.

-- 
Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom.  Registered in
England and Wales under Company Registration No. 03798903
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3237 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20070705/e74bea8b/attachment-0001.bin>


More information about the libvir-list mailing list