Skip to content

Commit 2c0b716

Browse files
committed
ci: avoid Docker 28 due to regression
This change modifies the CI script to avoid Docker version 28, which has a known regression that breaks Checkpoint/Restore (C/R) functionality. The issue is tracked in the moby/moby project as moby/moby#50750. Signed-off-by: Andrei Vagin <avagin@google.com>
1 parent 0c679d9 commit 2c0b716

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

scripts/ci/docker-test.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,24 @@
22

33
set -x -e -o pipefail
44

5+
# Workaround: Docker 28.x has a known regression that breaks the checkpoint and
6+
# restore (C/R) feature. Let's install previous, or next major version. See
7+
# https://github.com/moby/moby/issues/50750 for details on the bug.
8+
export DEBIAN_FRONTEND=noninteractive
9+
apt remove -y docker-ce docker-ce-cli
10+
./apt-install -y ca-certificates curl
11+
install -m 0755 -d /etc/apt/keyrings
12+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
13+
chmod a+r /etc/apt/keyrings/docker.asc
14+
# shellcheck disable=SC1091
15+
echo \
16+
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
17+
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" > /etc/apt/sources.list.d/docker.list
18+
apt update -y
19+
apt-cache madison docker-ce | awk '{ print $3 }'
20+
verstr="$(apt-cache madison docker-ce | awk '{ print $3 }' | sort | grep -v ':28\.'| tail -n 1)"
21+
./apt-install -y "docker-ce=$verstr" "docker-ce-cli=$verstr"
22+
523
# docker checkpoint and restore is an experimental feature
624
echo '{ "experimental": true }' > /etc/docker/daemon.json
725
service docker restart

0 commit comments

Comments
 (0)