Add additional CI jobs to avoid accidental breakage
In general, we'd like to make sure Git works on the LTS versions of major Linux distributions. To do that, let's add CI jobs for the oldest regular (non-extended) LTS versions of the major distributions: Ubuntu 20.04, Debian 11, and RHEL 8. Because RHEL isn't available to the public at no charge, use AlmaLinux, which is binary compatible with it. Note that Debian does not offer the language-pack packages, but suitable locale support can be installed with the locales-all package. Otherwise, use the set of installation instructions which exist and are most similar to the existing supported distros. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Taylor Blau <me@ttaylorr.com>
This commit is contained in:
committed by
Taylor Blau
parent
ad797eace4
commit
ac112fd4f0
9
.github/workflows/main.yml
vendored
9
.github/workflows/main.yml
vendored
@@ -342,12 +342,21 @@ jobs:
|
|||||||
- jobname: linux-musl
|
- jobname: linux-musl
|
||||||
image: alpine
|
image: alpine
|
||||||
distro: alpine-latest
|
distro: alpine-latest
|
||||||
|
# Supported until 2025-04-02.
|
||||||
- jobname: linux32
|
- jobname: linux32
|
||||||
image: i386/ubuntu:focal
|
image: i386/ubuntu:focal
|
||||||
distro: ubuntu32-20.04
|
distro: ubuntu32-20.04
|
||||||
- jobname: pedantic
|
- jobname: pedantic
|
||||||
image: fedora
|
image: fedora
|
||||||
distro: fedora-latest
|
distro: fedora-latest
|
||||||
|
# A RHEL 8 compatible distro. Supported until 2029-05-31.
|
||||||
|
- jobname: almalinux-8
|
||||||
|
image: almalinux:8
|
||||||
|
distro: almalinux-8
|
||||||
|
# Supported until 2026-08-31.
|
||||||
|
- jobname: debian-11
|
||||||
|
image: debian:11
|
||||||
|
distro: debian-11
|
||||||
env:
|
env:
|
||||||
jobname: ${{matrix.vector.jobname}}
|
jobname: ${{matrix.vector.jobname}}
|
||||||
distro: ${{matrix.vector.distro}}
|
distro: ${{matrix.vector.distro}}
|
||||||
|
|||||||
@@ -29,26 +29,32 @@ alpine-*)
|
|||||||
apache2 apache2-http2 apache2-proxy apache2-ssl apache2-webdav apr-util-dbd_sqlite3 \
|
apache2 apache2-http2 apache2-proxy apache2-ssl apache2-webdav apr-util-dbd_sqlite3 \
|
||||||
bash cvs gnupg perl-cgi perl-dbd-sqlite perl-io-tty >/dev/null
|
bash cvs gnupg perl-cgi perl-dbd-sqlite perl-io-tty >/dev/null
|
||||||
;;
|
;;
|
||||||
fedora-*)
|
fedora-*|almalinux-*)
|
||||||
dnf -yq update >/dev/null &&
|
dnf -yq update >/dev/null &&
|
||||||
dnf -yq install make gcc findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null
|
dnf -yq install make gcc findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null
|
||||||
;;
|
;;
|
||||||
ubuntu-*|ubuntu32-*)
|
ubuntu-*|ubuntu32-*|debian-*)
|
||||||
# Required so that apt doesn't wait for user input on certain packages.
|
# Required so that apt doesn't wait for user input on certain packages.
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
case "$distro" in
|
case "$distro" in
|
||||||
ubuntu-*)
|
ubuntu-*)
|
||||||
SVN='libsvn-perl subversion'
|
SVN='libsvn-perl subversion'
|
||||||
|
LANGUAGES='language-pack-is'
|
||||||
|
;;
|
||||||
|
ubuntu32-*)
|
||||||
|
SVN=
|
||||||
|
LANGUAGES='language-pack-is'
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
SVN=
|
SVN='libsvn-perl subversion'
|
||||||
|
LANGUAGES='locales-all'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
sudo apt-get -q update
|
sudo apt-get -q update
|
||||||
sudo apt-get -q -y install \
|
sudo apt-get -q -y install \
|
||||||
language-pack-is apache2 cvs cvsps git gnupg $SVN \
|
$LANGUAGES apache2 cvs cvsps git gnupg $SVN \
|
||||||
make libssl-dev libcurl4-openssl-dev libexpat-dev wget sudo default-jre \
|
make libssl-dev libcurl4-openssl-dev libexpat-dev wget sudo default-jre \
|
||||||
tcl tk gettext zlib1g-dev perl-modules liberror-perl libauthen-sasl-perl \
|
tcl tk gettext zlib1g-dev perl-modules liberror-perl libauthen-sasl-perl \
|
||||||
libemail-valid-perl libio-pty-perl libio-socket-ssl-perl libnet-smtp-ssl-perl libdbd-sqlite3-perl libcgi-pm-perl \
|
libemail-valid-perl libio-pty-perl libio-socket-ssl-perl libnet-smtp-ssl-perl libdbd-sqlite3-perl libcgi-pm-perl \
|
||||||
|
|||||||
Reference in New Issue
Block a user