This came up while reviewing recent changes in fog-libvirt. The background is that now fog-libvirt changed the default CPU type from some virtual definition to host passthrough:
Foreman exposes the CPU_TYPES options:
Now default is host-passthrough, which makes the UI confusing. It raises the question whether CPU types are needed at all. Do we need to introduce some compatibility type, or drop it altogether?
The compatibility option is there for live migration between hosts where you can at least guarantee a common baseline CPU, but we don’t support live migrations on libvirt anyway. My suggestion would be to drop it entirely. This simplifies the UI a bit and you don’t lose anything noticeable. But perhaps I’m missing something.