integ/virt/libvirt/debian
Thales Elero Cervi 1f37f8b5d4 Debian: Add build structure for virt/libvirt
This change adds the necessary files for the libvirt package to be built
for Debian.
This change is the new approach for porting this package and will be
replacing an old change that will no longer be valid [1].

All the libvirt related packages (rpm) delivered on CentOS builds of
starlingx were verified to exist or have an equivalent package for the
Debian Bullseye (deb) distro [2], which is based on libvirt 7.0.0.

The upstream Debian packaging, patches and configuration will be used as
is, although the deb_patches directory will contain a patch to add few
starlingx specific files that are required, based on how stx-libvirt [3]
was previously built and delivered to CentOS.
This change will deprecate the starlingx-staging/stx-libvirt repository
and any future starlingx change to libvirt will now be placed here,
on top of debian/7.0.0-3 (bullseye) version.

Earlier (on CentOS) the base point was the libvirt 4.7.0 release and 17
starlingx specific commits were added to deliver new features or fix
bugs. Now, the base point will be the libvirt 7.0.0 release package
already prepared for Debian [4] and those 17 commits port will be
evaluated and done, in case they are still needed.

The patches dir will contain source code patches required for
stx-libvirt, that is, the code that was earlier added on top of 4.7.0
libvirt release to add StarlingX required functionalities.
The work done on this change is simply porting the code changes,
copying it and doing the minimum required updates when it is needed.
If more than one commit (from that list) can be placed on a single
patch, the patch description will contain all the necessary references.

The list of commits follow, where the "-" character indicates that the
commit was dropped now that we are based on 7.0.0:
-8c46e4 conf: Introduce VIR_DEFINE_AUTOPTR_FUNC for virStorageVolDef
-e8c2ae storage: add support for new rbd_list2 method
-dee98c storage: split off code for calling rbd_list
-956103 Revert "qemu: hotplug: Prepare disk source in..."
-97d02f STX: po make: limit thread creation ability of libgomp
-6e8f91 STX: Revert "vsh: Fix broken build on mingw"
 0d92d8 STX: pci-sriov perform limited retry on netlink failures
 c49366 STX: Increase timeout for connecting to monitor
 dedd07 STX: Stop processing memory stats if balloon info hard fails
-e0f897 STX: Allow vcpu pinning with TCG
 d8b544 STX: Adding systemd dependencies against pmon.service
-7bf5a9 STX: Set initial cpu affinity of qemu threads
 28b73b STX: Fixed default libvirtd systemd service
 e4c5a6 STX: DPDK parms handling
 fdf5e7 STX: Drop migration poll times to 10mS
 fbc79d STX: System Logging: set group read permission on log files
 2721c7 STX: CPU pinning not working over live-migration

[1] https://review.opendev.org/c/starlingx/integ/+/824928
[2] https://packages.debian.org/source/bullseye/libvirt
[3] https://github.com/starlingx-staging/stx-libvirt
[4] https://salsa.debian.org/libvirt-team/libvirt/-/tree/debian/7.0.0-3/debian

Test Plan:
PASS: Build the libvirt packages
PASS: Build Debian ISO with libvirt packages
PASS: Bootstrap Debian ISO on AIO-SX
PASS: Ensure libvirt packages are installed (apt list --installed)
PASS: Lock/Unlock AIO-SX *
* Future tests regarding the libvirt/qemu runtime features will be done
once all the pieces are in place in the ISO.

Depends-On: https://review.opendev.org/c/starlingx/root/+/865021

Story: 2010317
Task: 46391

Signed-off-by: Thales Elero Cervi <thaleselero.cervi@windriver.com>
Change-Id: Ib3da0e663336021fa2cfd6b400d1081fc0113348
2022-11-18 18:10:54 -03:00
..
deb_patches Debian: Add build structure for virt/libvirt 2022-11-18 18:10:54 -03:00
patches Debian: Add build structure for virt/libvirt 2022-11-18 18:10:54 -03:00
meta_data.yaml Debian: Add build structure for virt/libvirt 2022-11-18 18:10:54 -03:00