Fleet Commander is an interesting new-ish project which could well be a good target for openQA testing: it involves FreeIPA, GNOME and Cockpit, all of which we test, and which are pretty hard to test together 'as a user would' with anything else (though @stefw could probably do it...)
One note is that this would require nested virt on the worker hosts: part of the Fleet Commander workflow involves launching a VM, and as the SUT in openQA is itself a VM, that would be nested. This shouldn't be a big problem (well, except for RHBZ#1539330...) but it's worth keeping in mind.
Metadata Update from @adamwill:
- Issue priority set to: Normal
- Issue tagged with: newtest
@ogutierrez @fidencio - we talked about this a bit at Devconf, I can't promise I'll get to it, but it's on the list :) I am more than happy to help anyone else who wants to work on it with figuring out openQA, please see https://fedoraproject.org/wiki/OpenQA as a good entry point for both Fedora-specific and general (upstream) documentation on how the system works and how to add tests, and please just ping me with any questions any time.
CC @dperpeet FYI
@adamwill In complex scenarios with lots of nested virtualization, some projects (like Cockpit CI, which often tests virt 3 nested layers deep) use qemu emulation at the deep layers.
This avoids stability and load problems we've seen show up.
I would suggest trying qemu emulation for the VMs that fleet commander creates as part of its tasks. This may require some patches and/or configuration to fleet commander.
@stefw noted, thanks! Will have to see which approach works best when implementing this.
Thank you very much guys. Whatever I can help you with Fleet Commander please tell me and I will do my best.
About the nested virtualization: Right now fleet commander would need 2 virtualization levels:
1st level: Admin and client machines. Admin has a FreeIPA, Cockpit, and Fleet Commander Admin plugin. Client has SSSD and Fleet Commander Client
2nd: Template machine: Fleet commander Admin needs to connect to a libvirt server to run the Template machine during live sessions. The easiest way I see for this is to use libvirt in the admin machine and run the second level nested in that machine.
to comment on this ticket.