On Mon, Jul 12, 2021 at 03:54:58PM +0900, Motohiro Kawahito wrote:
Hello. This is my first time of sending e-mail to this mailing list.
We are developing a new hypervisor driver. What should we prepare for
contributing it? So far, we implemented the following functions. Are there
any other things we should prepare?
Aside from the actual functionality there are things like
- All existing unit tests should pass of course
- Ideally you should add unit tests for your driver too, especially
focus on the conversion between the libvirt XML format, and whatever
config format your hypervisor needs. eg qemuxml2argvtest.c is what
QEMU needs, while libxlxml2domconfigdata.c shows a different approach
used by Xen
- Make sure the code style looks the same as normal code style for
other parts of libvirt. We have 'syntax-check' suite tat runs
as part of the tests to validate alot of this.
- Add any build pre-requisites to the container files to let it
build in GitLab CI
- Making sure it passes when run in GitLab CI.
- Possibly changes to the RPM spec (if the hypervisor is relevant)
.connectOpen
...snip...
.domainUndefineFlags
These are more than enough APIs for a first contribution. Better to get
the initial framework for a driver merged sooner, and then do additional
API coverage as follow on patches.
Don't worry too much about trying to get everything 100% perfect first
time around. No one ever will. Even if you don't think the code is quite
ready, it is still beneficial to send patches, marked as 'WIP' or 'RFC'.
We can give you more direct feedback on any areas that would need
work before being mergable, and spot any significant problems before
you spend too much time.
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 :|