aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2025-01-10 12:32:01 +0100
committerJunio C Hamano <gitster@pobox.com>2025-01-10 09:15:37 -0800
commitb133d3071ae6c648aced1c40e12914cb6b2ccec9 (patch)
tree9e5d6bca158696587718b35033c12bbd462bcec5
parent9548e0478edaad0ec1e5dc4b7afc7af51dee43b0 (diff)
downloadgit-b133d3071ae6c648aced1c40e12914cb6b2ccec9.tar.gz
github: simplify computation of the job's distro
We explicitly list the distro of Linux-based jobs, but it is equivalent to the name of the image in almost all cases, except that colons are replaced with dashes. Drop the redundant information and massage it in our CI scripts, which is equivalent to how we do it in GitLab CI. There are a couple of exceptions: - The "linux32" job, whose distro name is different than the image name. This is handled by adapting all sites to use the new name. - The "alpine" and "fedora" jobs, neither of which specify a tag for their image. This is handled by adding the "latest" tag. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--.github/workflows/main.yml22
-rwxr-xr-xci/install-dependencies.sh4
-rwxr-xr-xci/lib.sh2
3 files changed, 8 insertions, 20 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 8e5847da4f..b54da639a6 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -275,7 +275,7 @@ jobs:
CC: ${{matrix.vector.cc}}
CC_PACKAGE: ${{matrix.vector.cc_package}}
jobname: ${{matrix.vector.jobname}}
- distro: ${{matrix.vector.pool}}
+ CI_JOB_IMAGE: ${{matrix.vector.pool}}
TEST_OUTPUT_DIRECTORY: ${{github.workspace}}/t
runs-on: ${{matrix.vector.pool}}
steps:
@@ -316,63 +316,49 @@ jobs:
- jobname: linux-sha256
image: ubuntu:latest
cc: clang
- distro: ubuntu-latest
- jobname: linux-reftable
image: ubuntu:latest
cc: clang
- distro: ubuntu-latest
- jobname: linux-gcc
image: ubuntu:20.04
cc: gcc
cc_package: gcc-8
- distro: ubuntu-20.04
- jobname: linux-TEST-vars
image: ubuntu:20.04
cc: gcc
cc_package: gcc-8
- distro: ubuntu-20.04
- jobname: linux-gcc-default
image: ubuntu:latest
cc: gcc
- distro: ubuntu-latest
- jobname: linux-leaks
image: ubuntu:latest
cc: gcc
- distro: ubuntu-latest
- jobname: linux-reftable-leaks
image: ubuntu:latest
cc: gcc
- distro: ubuntu-latest
- jobname: linux-asan-ubsan
image: ubuntu:latest
cc: clang
- distro: ubuntu-latest
- jobname: linux-meson
image: ubuntu:latest
cc: gcc
- distro: ubuntu-latest
- jobname: linux-musl
- image: alpine
- distro: alpine-latest
+ image: alpine:latest
# Supported until 2025-04-02.
- jobname: linux32
image: i386/ubuntu:focal
- distro: ubuntu32-20.04
- jobname: pedantic
- image: fedora
- distro: fedora-latest
+ image: 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}}
CC: ${{matrix.vector.cc}}
+ CI_JOB_IMAGE: ${{matrix.vector.image}}
runs-on: ubuntu-latest
container: ${{matrix.vector.image}}
steps:
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index ecb5b9d36c..d5a959e25f 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -33,7 +33,7 @@ fedora-*|almalinux-*)
dnf -yq update >/dev/null &&
dnf -yq install shadow-utils sudo make gcc findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null
;;
-ubuntu-*|ubuntu32-*|debian-*)
+ubuntu-*|i386/ubuntu-*|debian-*)
# Required so that apt doesn't wait for user input on certain packages.
export DEBIAN_FRONTEND=noninteractive
@@ -42,7 +42,7 @@ ubuntu-*|ubuntu32-*|debian-*)
SVN='libsvn-perl subversion'
LANGUAGES='language-pack-is'
;;
- ubuntu32-*)
+ i386/ubuntu-*)
SVN=
LANGUAGES='language-pack-is'
;;
diff --git a/ci/lib.sh b/ci/lib.sh
index 8885ee3c3f..f8b68ab8a6 100755
--- a/ci/lib.sh
+++ b/ci/lib.sh
@@ -246,6 +246,8 @@ then
GIT_TEST_OPTS="--github-workflow-markup"
JOBS=10
+
+ distro=$(echo "$CI_JOB_IMAGE" | tr : -)
elif test true = "$GITLAB_CI"
then
CI_TYPE=gitlab-ci