Skip to content

Commit

Permalink
Add additional CI jobs to avoid accidental breakage
Browse files Browse the repository at this point in the history
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 <[email protected]>
Signed-off-by: Taylor Blau <[email protected]>
  • Loading branch information
bk2204 authored and ttaylorr committed Nov 1, 2024
1 parent ad797ea commit ac112fd
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 4 deletions.
9 changes: 9 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -342,12 +342,21 @@ jobs:
- jobname: linux-musl
image: alpine
distro: alpine-latest
# Supported until 2025-04-02.
- jobname: linux32
image: i386/ubuntu:focal
distro: ubuntu32-20.04
- jobname: pedantic
image: fedora
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:
jobname: ${{matrix.vector.jobname}}
distro: ${{matrix.vector.distro}}
Expand Down
14 changes: 10 additions & 4 deletions ci/install-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,26 +29,32 @@ alpine-*)
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
;;
fedora-*)
fedora-*|almalinux-*)
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
;;
ubuntu-*|ubuntu32-*)
ubuntu-*|ubuntu32-*|debian-*)
# Required so that apt doesn't wait for user input on certain packages.
export DEBIAN_FRONTEND=noninteractive

case "$distro" in
ubuntu-*)
SVN='libsvn-perl subversion'
LANGUAGES='language-pack-is'
;;
*)
ubuntu32-*)
SVN=
LANGUAGES='language-pack-is'
;;
*)
SVN='libsvn-perl subversion'
LANGUAGES='locales-all'
;;
esac

sudo apt-get -q update
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 \
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 \
Expand Down

0 comments on commit ac112fd

Please sign in to comment.