Skip to content

Commit

Permalink
Merge branch 'jk/ci-linux32-update'
Browse files Browse the repository at this point in the history
CI updates

* jk/ci-linux32-update:
  ci: add Ubuntu 16.04 job to GitLab CI
  ci: use regular action versions for linux32 job
  ci: use more recent linux32 image
  ci: unify ubuntu and ubuntu32 dependencies
  ci: drop run-docker scripts
  • Loading branch information
gitster committed Sep 16, 2024
2 parents f9fff15 + 7cd8f1c commit aeda40b
Show file tree
Hide file tree
Showing 6 changed files with 50 additions and 141 deletions.
12 changes: 6 additions & 6 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -339,8 +339,8 @@ jobs:
image: alpine
distro: alpine-latest
- jobname: linux32
image: daald/ubuntu32:xenial
distro: ubuntu32-16.04
image: i386/ubuntu:focal
distro: ubuntu32-20.04
- jobname: pedantic
image: fedora
distro: fedora-latest
Expand All @@ -350,17 +350,17 @@ jobs:
runs-on: ubuntu-latest
container: ${{matrix.vector.image}}
steps:
- uses: actions/checkout@v4
if: matrix.vector.jobname != 'linux32'
- uses: actions/checkout@v1 # cannot be upgraded because Node.js Actions aren't supported in this container
- name: prepare libc6 for actions
if: matrix.vector.jobname == 'linux32'
run: apt -q update && apt -q -y install libc6-amd64 lib64stdc++6
- uses: actions/checkout@v4
- run: ci/install-dependencies.sh
- run: ci/run-build-and-tests.sh
- name: print test failures
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
run: ci/print-test-failures.sh
- name: Upload failed tests' directories
if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname != 'linux32'
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
uses: actions/upload-artifact@v4
with:
name: failed-tests-${{matrix.vector.jobname}}
Expand Down
3 changes: 3 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ test:linux:
fi
parallel:
matrix:
- jobname: linux-old
image: ubuntu:16.04
CC: gcc
- jobname: linux-sha256
image: ubuntu:latest
CC: clang
Expand Down
54 changes: 33 additions & 21 deletions ci/install-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,37 +33,49 @@ fedora-*)
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-*)
ubuntu-*|ubuntu32-*)
# 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'
;;
*)
SVN=
;;
esac

sudo apt-get -q update
sudo apt-get -q -y install \
language-pack-is libsvn-perl apache2 cvs cvsps git gnupg subversion \
language-pack-is 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 \
${CC_PACKAGE:-${CC:-gcc}} $PYTHON_PACKAGE

mkdir --parents "$CUSTOM_PATH"
wget --quiet --directory-prefix="$CUSTOM_PATH" \
"$P4WHENCE/bin.linux26x86_64/p4d" "$P4WHENCE/bin.linux26x86_64/p4"
chmod a+x "$CUSTOM_PATH/p4d" "$CUSTOM_PATH/p4"

wget --quiet "$LFSWHENCE/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
tar -xzf "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" \
-C "$CUSTOM_PATH" --strip-components=1 "git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs"
rm "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"

wget --quiet "$JGITWHENCE" --output-document="$CUSTOM_PATH/jgit"
chmod a+x "$CUSTOM_PATH/jgit"
;;
ubuntu32-*)
sudo linux32 --32bit i386 sh -c '
apt update >/dev/null &&
apt install -y build-essential libcurl4-openssl-dev \
libssl-dev libexpat-dev gettext python >/dev/null
'
case "$distro" in
ubuntu-16.04)
# Does not support JGit, but we also don't really care about
# the others. We rather care whether Git still compiles and
# runs fine overall.
;;
ubuntu-*)
mkdir --parents "$CUSTOM_PATH"

wget --quiet --directory-prefix="$CUSTOM_PATH" \
"$P4WHENCE/bin.linux26x86_64/p4d" "$P4WHENCE/bin.linux26x86_64/p4"
chmod a+x "$CUSTOM_PATH/p4d" "$CUSTOM_PATH/p4"

wget --quiet "$LFSWHENCE/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
tar -xzf "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" \
-C "$CUSTOM_PATH" --strip-components=1 "git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs"
rm "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"

wget --quiet "$JGITWHENCE" --output-document="$CUSTOM_PATH/jgit"
chmod a+x "$CUSTOM_PATH/jgit"
;;
esac
;;
macos-*)
export HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_CLEANUP=1
Expand Down
9 changes: 8 additions & 1 deletion ci/lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,14 @@ ubuntu-*)
fi
MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/$PYTHON_PACKAGE"

export GIT_TEST_HTTPD=true
case "$distro" in
ubuntu-16.04)
# Apache is too old for HTTP/2.
;;
*)
export GIT_TEST_HTTPD=true
;;
esac

# The Linux build installs the defined dependency versions below.
# The OS X build installs much more recent versions, whichever
Expand Down
66 changes: 0 additions & 66 deletions ci/run-docker-build.sh

This file was deleted.

47 changes: 0 additions & 47 deletions ci/run-docker.sh

This file was deleted.

0 comments on commit aeda40b

Please sign in to comment.