Subject: Re: [PATCH] ci: update Cirrus-CI image to FreeBSD 13.0

From: Philippe Blain <[email-masked]>
Date: Tue, 24 May 2022 16:56:41 -0400

Hi Ævar,

Le 2022-05-24 à 15:24, Ævar Arnfjörð Bjarmason a écrit :
> 
> On Tue, May 24 2022, Philippe Blain wrote:
> 
>> The FreeBSD CI build (on Cirrus-CI) has been failing in
>> 't9001-send-email.sh' for quite some time, with an error from the
>> runtime linker relating to the Perl installation:
>>
>>     ld-elf.so.1: /usr/local/lib/perl5/5.32/mach/CORE/libperl.so.5.32: Undefined symbol "[email-masked]"
>>
>> The first instance is in t9001.6 but it fails similarly in several tests
>> in this file.
>>
>> The FreeBSD image we use is FreeBSD 12.2, which is unsupported since
>> March 31st, 2022 [1]. Switching to a supported version, 13.0,
>> makes this error disappear [2].
>>
>> Change the image we use to FreeBSD 13.0.
>>
>> [1] https://www.freebsd.org/security/unsupported/
>> [2] https://lore.kernel.org/git/[email-masked]/
>>
>> Signed-off-by: Philippe Blain <[email-masked]>
>> ---
>>
>>     Here is a proper patch following my earlier mail [1].
>>     
>>     [1] https://lore.kernel.org/git/[email-masked]/T/#t
>>
>>  .cirrus.yml | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/.cirrus.yml b/.cirrus.yml
>> index e114ffee1a..20c85eef81 100644
>> --- a/.cirrus.yml
>> +++ b/.cirrus.yml
>> @@ -9,7 +9,7 @@ freebsd_12_task:
>>      DEFAULT_TEST_TARGET: prove
>>      DEVELOPER: 1
>>    freebsd_instance:
>> -    image_family: freebsd-12-2
>> +    image_family: freebsd-13-0
>>      memory: 2G
>>    install_script:
>>      pkg install -y gettext gmake perl5
>>
>> base-commit: 7a3eb286977746bc09a5de7682df0e5a7085e17c
> 
> This may or may not be a good idea, I've got no about about this CI
> setup & what FreeBSD version we'd prefer.
> 
> But that you're seeing this in t9001-send-email.sh in particular
> suggests that perl isn't broken in general, as we hard depend on it in a
> bunch of places in the test suite.
> 
> Rather, it's some more advanced Perl usage.
> 
> So aside from this switch perhaps we'd like to have a more specific
> prereq for those send-email tests than just "PERL", which is controlled
> by our "NO_PERL" build-time setting, i.e. to actually probe if Perl
> works.

OK... I see what you mean, but I do not know enough about Perl or 
FreeBSD to know if this makes sense or not. My gut feeling was that
the system 'perl' package was somehow broken on that particular image.

As I wrote in my reply to Carlo, just switching to FreeBSD 12.3 also
makes the error disappear.

> 
> The error you quote doesn't tell us anything about where it happened,
> which aside from anything else would be useful to have in the commit
> message. I.e. what command did we run when this failed, and did other
> perl commands before that (either in that test, or others) work?
> 

OK, I can mention the invocation that triggers that error.