libvirt-devaddr: a new library for device address assignment

Daniel P. Berrangé berrange at redhat.com
Fri May 1 10:30:02 UTC 2020


On Thu, Apr 30, 2020 at 03:20:19PM -0300, Daniel Henrique Barboza wrote:
> 
> 
> On 3/19/20 4:00 PM, Laine Stump wrote:
> > TL;DR - I'm not as anti-XML as the proposal seems to be, but also not pro-XML. I also (after thinking about it) understand the advantage of putting this in a separate library. So yeah, let's go it!
> 
> [...]
> 
> > Anyway, in the end I think my opinion is we should push ahead and
> > think about consequences of the specifics later, after some
> > experimenting. I'd love to help if there's a place for it. I'm just
> > not sure where/how I could contribute, especially since I have only
> > about 4 hours worth of golang knowledge :-) (certainly not against
> > getting more though!)
> 
> I'll start writing some code here and there for this initiative. Does
> anyone already started doing something? Otherwise I'll push code in
> github/gitlab when I have stuff to show.

I've actually started work on a skeleton for the API this week to
try to flesh out some rough ideas for the general approach to the
problem.

> My understanding from the discussions is that the API is going to supply
> JSON responses instead of domxml (domXML might be supplied as an option,
> but it wouldn't be the default format used). Is that correct?

I'm completely ignoring libvirt Domain XML right now. I don't want the
design to be constrained by any of our historic design decisions in
libvirt. IOW, I intend it to be a greenfield site code wise.

Oone of the eventual goals is to make use of this to replace current
libvirt device addressing code, so eventually attention will have to
return to how this would map to Domain XML. It just isn't a short term
priority.

As for JSON, I'm again not too bothered about that right now, as that's
a really minor part of the problem. Primarily I want to come up with a
plain Go interface, based on some data model structs and APIs. Those
data model structs can trivially be mapped to JSON/YAML using the go
encoding/json or encoding/yaml APIs.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list