Skip to content

Commit cb65468

Browse files
committed
Introduce cleanup-after-build.sh to clean all docker volumes generated during rpm building
1 parent 665899f commit cb65468

File tree

2 files changed

+50
-0
lines changed

2 files changed

+50
-0
lines changed

hack/cleanup-after-build.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/bin/bash
2+
3+
# This script cleans up resources allocated during image building
4+
5+
source "$(dirname "${BASH_SOURCE}")/lib/init.sh"
6+
7+
# delete all docker volumes used to build images to free space
8+
os::cleanup::buildvolumes

hack/lib/util/environment.sh

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,3 +287,45 @@ function os::util::environment::setup_images_vars() {
287287
export MAX_IMAGES_BULK_IMPORTED_PER_REPOSITORY="${MAX_IMAGES_BULK_IMPORTED_PER_REPOSITORY:-3}"
288288
}
289289
readonly -f os::util::environment::setup_images_vars
290+
291+
# os::cleanup::docker::volumes clens all docker volumes with a given prefix.
292+
#
293+
# Globals:
294+
# None
295+
# Arguments:
296+
# - 1: docker volume prefix
297+
# Returns:
298+
# None
299+
function os::cleanup::docker::volumes() {
300+
local prefix=${1}
301+
local volumes="$(docker volume ls -q | grep ${prefix})"
302+
if [[ "${volumes}" != "" ]]; then
303+
docker volume rm ${volumes}
304+
fi
305+
}
306+
readonly -f os::cleanup::docker::volumes
307+
308+
# os::cleanup::buildvolumes clens all volumes with origin-build prefix
309+
#
310+
# Globals:
311+
# None
312+
# Arguments:
313+
# None
314+
# Returns:
315+
# None
316+
function os::cleanup::buildvolumes() {
317+
local result=1
318+
if os::util::find::system_binary 'imagebuilder' >/dev/null; then
319+
os::log::warning "volumes cleaning not implemented for imagebuilder"
320+
result=0
321+
else
322+
os::log::warning "Unable to locate 'imagebuilder' on PATH, falling back to Docker"
323+
if os::cleanup::docker::volumes "origin-build"; then
324+
result=0
325+
fi
326+
fi
327+
328+
return "${result}"
329+
}
330+
331+
readonly -f os::cleanup::buildvolumes

0 commit comments

Comments
 (0)