diff mbox series

ci: update Cirrus-CI image to FreeBSD 13.0

Message ID 20220524165823.18804-1-levraiphilippeblain@gmail.com (mailing list archive)
State New
Headers show
Series ci: update Cirrus-CI image to FreeBSD 13.0 | expand

Commit Message

Philippe Blain May 24, 2022, 4:58 p.m. UTC
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 "strerror_l@FBSD_1.6"

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/9cc31276-ab78-fa8a-9fb4-b19266911211@gmail.com/

Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
---

    Here is a proper patch following my earlier mail [1].
    
    [1] https://lore.kernel.org/git/CAPUEspgdAos4KC-3AwYDd5p+u0hGk73nGocBTFFSR7VB9+M5jw@mail.gmail.com/T/#t

 .cirrus.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


base-commit: 7a3eb286977746bc09a5de7682df0e5a7085e17c

Comments

Carlo Marcelo Arenas Belón May 24, 2022, 7:20 p.m. UTC | #1
On Tue, May 24, 2022 at 12:58:23PM -0400, 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 "strerror_l@FBSD_1.6"
> 
> The first instance is in t9001.6 but it fails similarly in several tests
> in this file.

I have to admit I never tried to use cirrus, but I verified locally that a
12.3 version wouldn't fail as well (or so I think).

did you try to use 12.3 which should be supported for a little longer?
 
> 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].

I think 13.1 might be better, since with this change we are also implicitly
making a move to say that we don't really care about the old (but still
supported) maintenance branch, but will only look at the "latest" version
instead.

still (and Ed might have a stronger opinion about it than me) either version
would be an improvement and feel free to add my Reviewed-by for what it is
worth.

>     [1] https://lore.kernel.org/git/CAPUEspgdAos4KC-3AwYDd5p+u0hGk73nGocBTFFSR7VB9+M5jw@mail.gmail.com/T/#t

this might had been mangled by your mailer, but will presume is the thread
where I replied before, and that obviously didn't stick for these round ;)

Carlo
Ævar Arnfjörð Bjarmason May 24, 2022, 7:24 p.m. UTC | #2
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 "strerror_l@FBSD_1.6"
>
> 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/9cc31276-ab78-fa8a-9fb4-b19266911211@gmail.com/
>
> Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
> ---
>
>     Here is a proper patch following my earlier mail [1].
>     
>     [1] https://lore.kernel.org/git/CAPUEspgdAos4KC-3AwYDd5p+u0hGk73nGocBTFFSR7VB9+M5jw@mail.gmail.com/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.

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?
Philippe Blain May 24, 2022, 8:52 p.m. UTC | #3
Hi Carlo,

Le 2022-05-24 à 15:20, Carlo Marcelo Arenas Belón a écrit :
> On Tue, May 24, 2022 at 12:58:23PM -0400, 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 "strerror_l@FBSD_1.6"
>>
>> The first instance is in t9001.6 but it fails similarly in several tests
>> in this file.
> 
> I have to admit I never tried to use cirrus, but I verified locally that a
> 12.3 version wouldn't fail as well (or so I think).
> 
> did you try to use 12.3 which should be supported for a little longer?

Yes, I tested 12.3 and it also works. We could switch to that and
keep 13.0 for later.

>  
>> 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].
> 
> I think 13.1 might be better, since with this change we are also implicitly
> making a move to say that we don't really care about the old (but still
> supported) maintenance branch, but will only look at the "latest" version
> instead.

I agree your reasoning, but 13.1 was not listed in the list of images on Cirrus-CI [1]. They 
say they support all Google Compute Engine images, but I could not find a public list
of these images ([2] seems to be it but I don't want to create an account just
to see a list!).

> 
> still (and Ed might have a stronger opinion about it than me) either version
> would be an improvement and feel free to add my Reviewed-by for what it is
> worth.

Thanks!

> 
>>     [1] https://lore.kernel.org/git/CAPUEspgdAos4KC-3AwYDd5p+u0hGk73nGocBTFFSR7VB9+M5jw@mail.gmail.com/T/#t
> 
> this might had been mangled by your mailer, but will presume is the thread
> where I replied before, and that obviously didn't stick for these round ;)
> 

I think it's actually on your side, as the archive shows this URL
on a single line [3]. And when I hit "reply all" in Thunderbird to type this
it seems to have put in back in a single line (!)

Cheers,

Philippe.


[1] https://cirrus-ci.org/guide/FreeBSD/
[2] https://console.cloud.google.com/compute/images
[3] https://lore.kernel.org/git/20220524165823.18804-1-levraiphilippeblain@gmail.com/T/#u
Philippe Blain May 24, 2022, 8:56 p.m. UTC | #4
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 "strerror_l@FBSD_1.6"
>>
>> 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/9cc31276-ab78-fa8a-9fb4-b19266911211@gmail.com/
>>
>> Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
>> ---
>>
>>     Here is a proper patch following my earlier mail [1].
>>     
>>     [1] https://lore.kernel.org/git/CAPUEspgdAos4KC-3AwYDd5p+u0hGk73nGocBTFFSR7VB9+M5jw@mail.gmail.com/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.
Carlo Marcelo Arenas Belón May 25, 2022, 4:35 a.m. UTC | #5
On Tue, May 24, 2022 at 1:53 PM Philippe Blain
<levraiphilippeblain@gmail.com> wrote:
>
> Hi Carlo,
>
> Le 2022-05-24 à 15:20, Carlo Marcelo Arenas Belón a écrit :

> > did you try to use 12.3 which should be supported for a little longer?
>
> Yes, I tested 12.3 and it also works. We could switch to that and
> keep 13.0 for later.

This seems like the better option overall; feel free to include
whatever footer you decide to use with my name in your next reroll.

> >> 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].
> >
> > I think 13.1 might be better, since with this change we are also implicitly
> > making a move to say that we don't really care about the old (but still
> > supported) maintenance branch, but will only look at the "latest" version
> > instead.
>
> I agree with your reasoning, but 13.1 was not listed in the list of images on Cirrus-CI [1]. They
> say they support all Google Compute Engine images, but I could not find a public list
> of these images ([2] seems to be it but I don't want to create an account just
> to see a list!).

Good point; BTW I'd noticed before that the easiest way is to "try it"
since the Cirrus documentation seems to lag behind for a little while,
and so as you can
see in this[0] run, it is working fine as well.

[0] https://github.com/carenas/git/runs/6584764718
> [1] https://cirrus-ci.org/guide/FreeBSD/
> [2] https://console.cloud.google.com/compute/images
Johannes Schindelin May 25, 2022, 10:37 a.m. UTC | #6
Hi Philippe,

On Tue, 24 May 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 "strerror_l@FBSD_1.6"

Thank you for taking care of this. It has been bugging other GitGitGadget
users as well.

>
> 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.

I like this minimal fix, and would be fine with using 12.3 instead (as
Carlo suggested), too.

Thank you!
Dscho
diff mbox series

Patch

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