[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 20/12] CI: Swap from perl to perl-base in build containers



On Sat, Jul 13, 2024 at 07:09:52PM +0100, Andrew Cooper wrote:
> We only need a basic perl environment, not the things that a primarily-perl
> project would want.
> 
> Discovered during the Fedora refresh where the difference is ~40M, but it's
> more modest for OpenSUSE and Ubuntu.

"perl-base" on Ubuntu is quite different from "perl-base" on OpenSUSE
Leap. I haven't check Tumbleweed but is probably the same as Leap.
So, I think these would deserve to be in separated patches.

On Ubuntu, installing "perl" or "perl-base" or none of them makes no
difference. We install "build-essentials" which pulls "dpkg-dev" which
pulls "perl", so we don't test properly if "perl-base" is enough or if
we need more.

I tried to find out which Perl module we would need, and I've got this
list:

- get_maintainer
    Getopt::Long;
- add_maintainer
    Getopt::Long;
    File::Basename;
    List::MoreUtils;
    IO::Handle;
- stubdom/vtpmmgr:
    Digest::SHA qw(sha1);
    Math::BigInt only => 'GMP';
- kconfig
    Getopt::Long;
- ocaml/lib/xc/abi-check
    Data::Dumper;
- docs/gen-html-index
    Getopt::Long;
    IO::File;
    File::Basename;
- docs/xen-headers
    Getopt::Long;
    File::Find;
    IO::File;
(there's also tools/examples/xeninfo.pl, I dont't if that can still work
or if we need to purge it)

Then I've got whatever module is in "perl-base" pkg.

For Leap's perl-base:
    getopt:long
    file:basename
    io:handle
    io:file
    file:find
    data:dumper
    digest:sha
So, add_maintainer.pl and the script in stubdom/vtpmmgr won't work. So
that's probably fine for Leap.

For Ubuntu 22.04 (not check others, but likely about the same)
there's more packages:
    perl-base
        getopt::long
        file:basename
        io:handle
        io:file
    perl-modules-5.34
        file:find
        math:bigint
    libperl5.34
        data:dumper
        digest:sha
    liblist-moreutils-perl
        list:MoreUtils
    librpc-xml-perl
        rpc:xml
("perl" pkg pulls "perl-modules-5.34" and "libperl5.34")

So with just "perl-base", the ocaml's abi-check wouldn't work, as well
as the docs's script (probably ok for "docs" if we don't use containers
to build them). Also add_maintainer and stubdom/vtpmmgr like for Leap.


So I would suggest to not touch the Ubuntu containers, make the change
to the OpenSUSE one and maybe add the limitation to the commit message.

Cheers,

-- 

Anthony Perard | Vates XCP-ng Developer

XCP-ng & Xen Orchestra - Vates solutions

web: https://vates.tech



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.