Skip to content

Commit 5a25df2

Browse files
committed
pin stable Debian image too [ci skip]
Besides testing, it's used for daily glibc builds. Also replace 'bookworm' with "stable" in descriptions. It doesn't stricly follow debian:stable, for the sake of controlling these bumps. For now it's still on bookworm, and will bump to trixie in an upcoming commit.
1 parent 76fcaee commit 5a25df2

File tree

4 files changed

+50
-43
lines changed

4 files changed

+50
-43
lines changed

.github/workflows/build.yml

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -167,8 +167,8 @@ jobs:
167167
*-*-linux*.*
168168
urls.txt
169169
170-
linux-glibc-debian-bookworm-llvm:
171-
name: 'linux-glibc-debian-bookworm-llvm'
170+
linux-glibc-debian-stable-llvm:
171+
name: 'linux-glibc-debian-stable-llvm'
172172
runs-on: 'ubuntu-latest'
173173
timeout-minutes: 30
174174
steps:
@@ -183,31 +183,31 @@ jobs:
183183
run: |
184184
export CW_CONFIG="${GITHUB_REF_NAME}-werror-linux"
185185
export CW_REVISION="${GITHUB_SHA}"
186-
DOCKER_IMAGE='debian:bookworm-slim'
186+
. ./_versions.sh
187187
export CW_CCSUFFIX='-15'
188188
export CW_GCCSUFFIX='-12'
189189
sudo podman image trust set --type reject default
190190
sudo podman image trust set --type accept docker.io/library
191-
time podman pull "${DOCKER_IMAGE}"
191+
time podman pull "${DOCKER_IMAGE_STABLE}"
192192
podman images --digests
193193
time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
194194
--env-file <(env | grep -a -E \
195195
'^(CW_|COSIGN_|GITHUB_|DO_NOT_TRACK)') \
196-
"${DOCKER_IMAGE}" \
196+
"${DOCKER_IMAGE_STABLE}" \
197197
sh -c ./_ci-linux-debian.sh
198198
199199
- name: 'list dependencies'
200200
run: cat urls.txt ./*-version-*.txt || true
201201
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
202202
with:
203-
name: 'curl-linux-glibc-debian-bookworm-llvm'
203+
name: 'curl-linux-glibc-debian-stable-llvm'
204204
retention-days: ${{ github.ref_name == 'main' && 90 || 5 }}
205205
path: |
206206
*-*-linux*.*
207207
urls.txt
208208
209-
linux-glibc-debian-bookworm-gcc:
210-
name: 'linux-glibc-debian-bookworm-gcc'
209+
linux-glibc-debian-stable-gcc:
210+
name: 'linux-glibc-debian-stable-gcc'
211211
runs-on: 'ubuntu-latest'
212212
timeout-minutes: 30
213213
steps:
@@ -222,24 +222,24 @@ jobs:
222222
run: |
223223
export CW_CONFIG="${GITHUB_REF_NAME}-werror-linux-gcc"
224224
export CW_REVISION="${GITHUB_SHA}"
225-
DOCKER_IMAGE='debian:bookworm-slim'
225+
. ./_versions.sh
226226
export CW_CCSUFFIX='-15'
227227
export CW_GCCSUFFIX='-12'
228228
sudo podman image trust set --type reject default
229229
sudo podman image trust set --type accept docker.io/library
230-
time podman pull "${DOCKER_IMAGE}"
230+
time podman pull "${DOCKER_IMAGE_STABLE}"
231231
podman images --digests
232232
time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
233233
--env-file <(env | grep -a -E \
234234
'^(CW_|COSIGN_|GITHUB_|DO_NOT_TRACK)') \
235-
"${DOCKER_IMAGE}" \
235+
"${DOCKER_IMAGE_STABLE}" \
236236
sh -c ./_ci-linux-debian.sh
237237
238238
- name: 'list dependencies'
239239
run: cat urls.txt ./*-version-*.txt || true
240240
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
241241
with:
242-
name: 'curl-linux-glibc-debian-bookworm-gcc'
242+
name: 'curl-linux-glibc-debian-stable-gcc'
243243
retention-days: ${{ github.ref_name == 'main' && 90 || 5 }}
244244
path: |
245245
*-*-linux*.*
@@ -319,8 +319,8 @@ jobs:
319319
*-*-linux*.*
320320
urls.txt
321321
322-
linux-musl-debian-bookworm-llvm:
323-
name: 'linux-musl-debian-bookworm-llvm'
322+
linux-musl-debian-stable-llvm:
323+
name: 'linux-musl-debian-stable-llvm'
324324
runs-on: 'ubuntu-latest'
325325
timeout-minutes: 30
326326
steps:
@@ -335,31 +335,31 @@ jobs:
335335
run: |
336336
export CW_CONFIG="${GITHUB_REF_NAME}-werror-linux-musl"
337337
export CW_REVISION="${GITHUB_SHA}"
338-
DOCKER_IMAGE='debian:bookworm-slim'
338+
. ./_versions.sh
339339
export CW_CCSUFFIX='-15'
340340
export CW_GCCSUFFIX='-12'
341341
sudo podman image trust set --type reject default
342342
sudo podman image trust set --type accept docker.io/library
343-
time podman pull "${DOCKER_IMAGE}"
343+
time podman pull "${DOCKER_IMAGE_STABLE}"
344344
podman images --digests
345345
time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
346346
--env-file <(env | grep -a -E \
347347
'^(CW_|COSIGN_|GITHUB_|DO_NOT_TRACK)') \
348-
"${DOCKER_IMAGE}" \
348+
"${DOCKER_IMAGE_STABLE}" \
349349
sh -c ./_ci-linux-debian.sh
350350
351351
- name: 'list dependencies'
352352
run: cat urls.txt ./*-version-*.txt || true
353353
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
354354
with:
355-
name: 'curl-linux-musl-debian-bookworm-llvm'
355+
name: 'curl-linux-musl-debian-stable-llvm'
356356
retention-days: ${{ github.ref_name == 'main' && 90 || 5 }}
357357
path: |
358358
*-*-linux*.*
359359
urls.txt
360360
361-
linux-musl-debian-bookworm-gcc:
362-
name: 'linux-musl-debian-bookworm-gcc'
361+
linux-musl-debian-stable-gcc:
362+
name: 'linux-musl-debian-stable-gcc'
363363
runs-on: 'ubuntu-latest'
364364
timeout-minutes: 30
365365
steps:
@@ -374,24 +374,24 @@ jobs:
374374
run: |
375375
export CW_CONFIG="${GITHUB_REF_NAME}-werror-linux-musl-gcc"
376376
export CW_REVISION="${GITHUB_SHA}"
377-
DOCKER_IMAGE='debian:bookworm-slim'
377+
. ./_versions.sh
378378
export CW_CCSUFFIX='-15'
379379
export CW_GCCSUFFIX='-12'
380380
sudo podman image trust set --type reject default
381381
sudo podman image trust set --type accept docker.io/library
382-
time podman pull "${DOCKER_IMAGE}"
382+
time podman pull "${DOCKER_IMAGE_STABLE}"
383383
podman images --digests
384384
time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
385385
--env-file <(env | grep -a -E \
386386
'^(CW_|COSIGN_|GITHUB_|DO_NOT_TRACK)') \
387-
"${DOCKER_IMAGE}" \
387+
"${DOCKER_IMAGE_STABLE}" \
388388
sh -c ./_ci-linux-debian.sh
389389
390390
- name: 'list dependencies'
391391
run: cat urls.txt ./*-version-*.txt || true
392392
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
393393
with:
394-
name: 'curl-linux-musl-debian-bookworm-gcc'
394+
name: 'curl-linux-musl-debian-stable-gcc'
395395
retention-days: ${{ github.ref_name == 'main' && 90 || 5 }}
396396
path: |
397397
*-*-linux*.*

.github/workflows/daily.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,17 +40,17 @@ jobs:
4040
run: |
4141
export CW_CONFIG='werror-dev-linux'
4242
export CW_REVISION; CW_REVISION="$(TZ=UTC date +'%Y%m%d')"
43-
DOCKER_IMAGE='debian:bookworm-slim'
43+
. ./_versions.sh
4444
export CW_CCSUFFIX='-15'
4545
export CW_GCCSUFFIX='-12'
4646
sudo podman image trust set --type reject default
4747
sudo podman image trust set --type accept docker.io/library
48-
time podman pull "${DOCKER_IMAGE}"
48+
time podman pull "${DOCKER_IMAGE_STABLE}"
4949
podman images --digests
5050
time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \
5151
--env-file <(env | grep -a -E \
5252
'^(CW_|SIGN_|COSIGN_|GITHUB_|DO_NOT_TRACK)') \
53-
"${DOCKER_IMAGE}" \
53+
"${DOCKER_IMAGE_STABLE}" \
5454
sh -c ./_ci-linux-debian.sh
5555
5656
- name: 'list dependencies'

_bumper.sh

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -29,32 +29,38 @@ export _CONFIG="${1:-}"
2929
# Find out the latest docker image release:
3030

3131
name='debian'
32+
cpu='amd64'
33+
34+
echo
35+
for release in 'testing' 'bookworm'; do
3236

33-
# https://docs.docker.com/reference/api/registry/latest/
34-
token="$(curl --disable --user-agent '' --silent --fail --show-error \
35-
"https://auth.docker.io/token?service=registry.docker.io&scope=repository:library/${name}:pull" \
36-
| jq --raw-output '.token')"
37+
# https://docs.docker.com/reference/api/registry/latest/
38+
token="$(curl --disable --user-agent '' --silent --fail --show-error \
39+
"https://auth.docker.io/token?service=registry.docker.io&scope=repository:library/${name}:pull" \
40+
| jq --raw-output '.token')"
3741

38-
tag="$(curl --disable --user-agent '' --silent --fail --show-error \
39-
--header 'Accept: application/json' \
40-
--header @/dev/stdin \
41-
"https://registry-1.docker.io/v2/library/${name}/tags/list" <<EOF \
42-
| jq --raw-output '.tags[]' | grep -E '^testing-[0-9]{8}-slim$' | sort | tail -n -1
42+
tag="$(curl --disable --user-agent '' --silent --fail --show-error \
43+
--header 'Accept: application/json' \
44+
--header @/dev/stdin \
45+
"https://registry-1.docker.io/v2/library/${name}/tags/list" <<EOF \
46+
| jq --raw-output '.tags[]' | grep -E "^${release}-[0-9]{8}-slim\$" | sort | tail -n -1
4347
Authorization: Bearer ${token}
4448
EOF
4549
)"
4650

47-
cpu='amd64'
48-
digest="$(curl --disable --user-agent '' --silent --fail --show-error \
49-
--header 'Accept: application/json' \
50-
--header @/dev/stdin \
51-
"https://registry-1.docker.io/v2/library/${name}/manifests/${tag}" <<EOF \
52-
| jq --raw-output --arg cpu "${cpu}" '.manifests[] | select(.platform.architecture == $cpu and .platform.os == "linux") | .digest'
51+
digest="$(curl --disable --user-agent '' --silent --fail --show-error \
52+
--header 'Accept: application/json' \
53+
--header @/dev/stdin \
54+
"https://registry-1.docker.io/v2/library/${name}/manifests/${tag}" <<EOF \
55+
| jq --raw-output --arg cpu "${cpu}" '.manifests[] | select(.platform.architecture == $cpu and .platform.os == "linux") | .digest'
5356
Authorization: Bearer ${token}
5457
EOF
5558
)"
5659

57-
echo; echo "export DOCKER_IMAGE='${name}:${tag}@${digest}' # ${cpu}"
60+
env_suffix=''
61+
[ "${release}" != 'testing' ] && env_suffix='_STABLE'
62+
echo "export DOCKER_IMAGE${env_suffix}='${name}:${tag}@${digest}' # ${cpu}"
63+
done
5864

5965
# Find out the latest AppVeyor CI Ubuntu worker image
6066

_versions.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
# SPDX-License-Identifier: MIT
55

66
export DOCKER_IMAGE='debian:testing-20250908-slim@sha256:f698e6243e87c0d6b727daae959c3f15a64a3a39cc280a2dd1305d007b3d5f27' # amd64
7+
export DOCKER_IMAGE_STABLE='debian:bookworm-20250908-slim@sha256:acd98e6cfc42813a4db9ca54ed79b6f702830bfc2fa43a2c2e87517371d82edb' # amd64
78

89
export CURL_VER_='8.16.0'
910
export CURL_HASH=40c8cddbcb6cc6251c03dea423a472a6cea4037be654ba5cf5dec6eb2d22ff1d

0 commit comments

Comments
 (0)