File tree Expand file tree Collapse file tree 2 files changed +32
-7
lines changed
Expand file tree Collapse file tree 2 files changed +32
-7
lines changed Original file line number Diff line number Diff line change 11#! /usr/bin/env bash
22set -euo pipefail
33
4- # Delete images older than 1 day (24h)
5- cutoff=$( date -d ' 1 day ago' +%s)
4+ # Configurable cutoff age (default 1 day)
5+ CUTOFF_HOURS=${CUTOFF_HOURS:- 24}
6+ CUTOFF_TS=$( date -d " ${CUTOFF_HOURS} hours ago" +%s)
7+
8+ echo " === Docker disk usage before cleanup ==="
9+ docker system df -v || true
10+ echo
11+
12+ echo " === Checking images older than ${CUTOFF_HOURS} h ==="
13+ deleted=0
14+ kept=0
615
716docker images --format ' {{.ID}} {{.Repository}}:{{.Tag}} {{.CreatedAt}}' \
817 | while read -r id name created_at _; do
18+ # skip dangling images (no repo:tag)
19+ [ " $name " = " <none>:<none>" ] && continue
920 created_ts=$( date -d " $created_at " +%s 2> /dev/null || echo 0)
10- if (( created_ts < cutoff )) ; then
11- echo " Deleting old image: $name ($id , created $created_at )"
12- docker rmi -f " $id " || true
21+ if (( created_ts < CUTOFF_TS )) ; then
22+ echo " 🗑️ Removing old image: $name (created $created_at )"
23+ docker rmi -f " $id " > /dev/null 2>&1 && (( deleted++ )) || true
24+ else
25+ (( kept++ ))
1326 fi
1427 done
28+
29+ echo
30+ echo " === Cleanup summary ==="
31+ echo " Images kept: $kept "
32+ echo " Images deleted: $deleted "
33+ echo
34+
35+ echo " === Docker disk usage after cleanup ==="
36+ docker system df -v || true
Original file line number Diff line number Diff line change @@ -131,8 +131,11 @@ jobs:
131131 # pytest -v -s entrypoints/offline_mode # Needs to avoid interference with other tests
132132 '
133133
134- - name : Cleanup container and image
134+ - name : Cleanup container
135135 if : always()
136136 run : |
137137 docker rm -f ${CONTAINER_ID} || true
138- docker system prune -af
138+
139+ - name : Cleanup old images
140+ if : always()
141+ run : cleanup_old_image.sh
You can’t perform that action at this time.
0 commit comments