On 01/09/2013 03:28 AM, Daniel P. Berrange wrote: >> We have virDomainDefineXML with no flags, but we have virDomainCreateXML >> with flags; maybe the better approach is to add a new creation flag that >> says that in addition to starting the domain, we also make it persistent >> at the same time. >> >> But if we do that, it would argue that 'virsh create --persistent >> blah.xml' is nicer than 'virsh define --start blah.xml', at least in >> that the former needs only 1 API call for new libvirt (but falls back to >> 2 API calls when talking to older libvirt), while the latter always >> needs 2 API calls. >> >> Or maybe it means we need to add virDomainDefineXMLFlags(). >> >> Anyone else want to throw some paint on the bikeshed on how best to make >> the user experience nicer? > > While I think the virsh idea is fine, I don't want to see this done > at the virDomainDefine API level, since it just duplicates functionality > already present. Just have virsh make an API call to the existing create > API. I agree that we don't really need to add virDomainDefineXMLFlags(). But I'm not quite clear on your stance on adding a new flag to the existing virDomainCreateXML(). A single API call is always nicer than two API calls for atomicity reasons. That is, I'm proposing that we add a new flag, and that: virDomainCreateXML(conn, xml, VIR_DOMAIN_CREATE_PERSISTENT) be used to both start and define a domain in one call, and only if that flag is unrecognized do we fall back to the two-API sequence of virDomainCreateXML(conn, xml, 0) && virDomainDefineXML(conn, xml) or the equivalent two-API sequence of dom=virDomainDefineXML(conn, xml) && virDomainCreate(dom) -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list