File tree 2 files changed +50
-0
lines changed 2 files changed +50
-0
lines changed Original file line number Diff line number Diff line change
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
Original file line number Diff line number Diff line change @@ -287,3 +287,45 @@ function os::util::environment::setup_images_vars() {
287
287
export MAX_IMAGES_BULK_IMPORTED_PER_REPOSITORY=" ${MAX_IMAGES_BULK_IMPORTED_PER_REPOSITORY:- 3} "
288
288
}
289
289
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
You can’t perform that action at this time.
0 commit comments