[libvirt-ci PATCH 2/2] Build libvirt-tck on CentOS 8

Daniel P. Berrangé berrange at redhat.com
Mon Apr 20 16:58:41 UTC 2020


On Mon, Apr 20, 2020 at 06:52:59PM +0200, Andrea Bolognani wrote:
> On Mon, 2020-04-20 at 14:05 +0100, Daniel P. Berrangé wrote:
> > On Mon, Apr 20, 2020 at 03:00:37PM +0200, Andrea Bolognani wrote:
> > >      # CentOS 7 doesn't include perl-generators, which is necessary to
> > >      # build libvirt-tck
> > 
> > perl-Sys-Virt-TCK.spec.PL says
> > 
> > %if 0%{?fedora} || 0%{?rhel} > 7
> > BuildRequires: perl-interpreter
> > BuildRequires: perl-generators
> > %endif
> > 
> > perl-generators is not a module ever used by code, it is an invention of the
> > RPM packaging, to get the automatic  Reqiures/Provides lines added. So the
> > fact that it doesn't exist on RHEL-7 is simply because it is part of another
> > RPM instead (redhat-rpm-config IIRC)
> 
> Okay, my testing was flawed because I failed to add libvirt-tck to
> the list of projects associated to the hosts in the inventory.
> 
> What happens if you actually try to build the project is, everything
> works fine on both targets until you get to the RPM part, which fails
> with
> 
>   perl(Config::Record) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch
>   perl(TAP::Formatter::HTML) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch
>   perl(TAP::Formatter::JUnit) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch
>   perl(TAP::Harness::Archive) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch
>   perl(accessors) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch
> 
> on CentOS 7 and with
> 
>   perl(Config::Record) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(LWP::UserAgent) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(Sys::Virt) >= 0.2.1 is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(TAP::Formatter::HTML) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(TAP::Formatter::JUnit) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(TAP::Harness::Archive) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
>   perl(accessors) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch
> 
> on CentOS 8, which looks about right because the corresponding
> packages are not available in the repositories.
> 
> Now the question is: if these are actual build requirements, how can
> the build succeed and the test suite pass?

Well the "build" phase in Perl essentially does nothing more than copying
files from one dir to another dir, so that won't care. The test suite will
need more stuff, but the test suite is fairly minimal in what it does, so
I'm not entirely surprised it passes.

I'm 100% confident if you actually run the TCK though it will fail due to
these missing pieces, most critically the Config::Record module.

I'd probably just leave it disabled on both CentOS but with fixed comments
to say why

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