ci: use more recent linux32 image

The Xenial image we're using was released more than 8 years ago. This is a problem for using some recent GitHub Actions scripts, as they require Node.js 20, and all of the binaries they ship need glibc 2.28 or later. We're not using them yet, but moving forward prepares us for a future patch which will. Xenial was actually the last official 32-bit Ubuntu release, but you can still find i386 images for more recent releases. This patch uses Focal, which was released in 2020 (and is the oldest one with glibc 2.28). There are two small downsides here: - while Xenial is pretty old, it is still in LTS support until April 2026. So there's probably some value in testing with such an old system, and we're losing that. - there are no i386 subversion packages in the Focal repository. So we won't be able to test that (OTOH, we had never tested it until the previous patch which unified the 32/64-bit dependency code). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jeff King committed Sep 12, 2024 at 05:47 UTC 9ce2e99c7d5518b622c3017cd12aa254c853df4f
2 files changed +12 -3
.github/workflows/main.yml
+2 -2
@@ -339,8 +339,8 @@ jobs:
339 image: alpine
340 distro: alpine-latest
341 - jobname: linux32
342 - image: daald/ubuntu32:xenial
343 - distro: ubuntu32-16.04
342 + image: i386/ubuntu:focal
343 + distro: ubuntu32-20.04
344 - jobname: pedantic
345 image: fedora
346 distro: fedora-latest
ci/install-dependencies.sh
+10 -1
@@ -37,9 +37,18 @@ ubuntu-*|ubuntu32-*)
37 # Required so that apt doesn't wait for user input on certain packages.
38 export DEBIAN_FRONTEND=noninteractive
39
40 + case "$distro" in
41 + ubuntu-*)
42 + SVN='libsvn-perl subversion'
43 + ;;
44 + *)
45 + SVN=
46 + ;;
47 + esac
48 +
49 sudo apt-get -q update
50 sudo apt-get -q -y install \
42 - language-pack-is libsvn-perl apache2 cvs cvsps git gnupg subversion \
51 + language-pack-is apache2 cvs cvsps git gnupg $SVN \
52 make libssl-dev libcurl4-openssl-dev libexpat-dev wget sudo default-jre \
53 tcl tk gettext zlib1g-dev perl-modules liberror-perl libauthen-sasl-perl \
54 libemail-valid-perl libio-pty-perl libio-socket-ssl-perl libnet-smtp-ssl-perl libdbd-sqlite3-perl libcgi-pm-perl \