Skip to content

Commit 2687d91

Browse files
authored
Merge pull request #558 from vvoland/fix-2942
rootless-install: use docker-29.4.2-2.tgz for version 29.4.2
2 parents f2b0ef9 + e020ecb commit 2687d91

2 files changed

Lines changed: 32 additions & 7 deletions

File tree

.github/workflows/ci.yml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ jobs:
1414
- quay.io/centos/centos:stream9
1515
version:
1616
- "27.5"
17+
- "29.4.2"
1718
- ""
1819

1920
steps:
@@ -31,13 +32,21 @@ jobs:
3132
test-install-rootless:
3233
runs-on: ubuntu-latest
3334
timeout-minutes: 5
35+
strategy:
36+
matrix:
37+
channel:
38+
- test
39+
- stable
40+
include:
41+
- channel: stable
42+
stable_latest: "29.4.2"
3443
steps:
3544
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
3645
- name: Install rootless
3746
env:
3847
GH_TOKEN: ${{ github.token }}
3948
run: |
4049
sudo sh -c 'echo 0 > /proc/sys/kernel/apparmor_restrict_unprivileged_userns'
41-
make build/test/rootless-install.sh
42-
FORCE_ROOTLESS_INSTALL=1 ./build/test/rootless-install.sh
43-
50+
make build/${{ matrix.channel }}/rootless-install.sh \
51+
${{ matrix.stable_latest && format('STABLE_LATEST={0}', matrix.stable_latest) || '' }}
52+
FORCE_ROOTLESS_INSTALL=1 ./build/${{ matrix.channel }}/rootless-install.sh

rootless-install.sh

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,32 @@ fi
3636

3737
STATIC_RELEASE_URL=
3838
STATIC_RELEASE_ROOTLESS_URL=
39+
40+
# static_release_url returns the download URL for a given package and version.
41+
# Some releases use a different tarball name than the version number (e.g. a
42+
# re-release with a suffix), which is handled here.
43+
# Usage: static_release_url <docker|docker-rootless-extras> <version>
44+
static_release_url() {
45+
case "$2" in
46+
29.4.2)
47+
echo "https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/$1-29.4.2-2.tgz"
48+
;;
49+
*)
50+
echo "https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/$1-$2.tgz"
51+
;;
52+
esac
53+
}
54+
3955
case "$CHANNEL" in
4056
"stable")
4157
echo "# Installing stable version ${STABLE_LATEST}"
42-
STATIC_RELEASE_URL="https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/docker-${STABLE_LATEST}.tgz"
43-
STATIC_RELEASE_ROOTLESS_URL="https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/docker-rootless-extras-${STABLE_LATEST}.tgz"
58+
STATIC_RELEASE_URL=$(static_release_url docker "$STABLE_LATEST")
59+
STATIC_RELEASE_ROOTLESS_URL=$(static_release_url docker-rootless-extras "$STABLE_LATEST")
4460
;;
4561
"test")
4662
echo "# Installing test version ${TEST_LATEST}"
47-
STATIC_RELEASE_URL="https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/docker-${TEST_LATEST}.tgz"
48-
STATIC_RELEASE_ROOTLESS_URL="https://download.docker.com/linux/static/$CHANNEL/$(uname -m)/docker-rootless-extras-${TEST_LATEST}.tgz"
63+
STATIC_RELEASE_URL=$(static_release_url docker "$TEST_LATEST")
64+
STATIC_RELEASE_ROOTLESS_URL=$(static_release_url docker-rootless-extras "$TEST_LATEST")
4965
;;
5066
*)
5167
>&2 echo "Aborting because of unknown CHANNEL \"$CHANNEL\". Set \$CHANNEL to either \"stable\" or \"test\"."

0 commit comments

Comments
 (0)