3 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
5 echo "Cleaning up docker containers/images..."
6 FUNCTEST_IMAGE=opnfv/functest
7 # Remove containers along with image opnfv/functest:<none>
8 dangling_images=($(docker images -f "dangling=true" | grep $FUNCTEST_IMAGE | awk '{print $3}'))
9 if [[ -n ${dangling_images} ]]; then
10 echo " Removing $FUNCTEST_IMAGE:<none> images and their containers..."
11 for image_id in "${dangling_images[@]}"; do
12 echo " Removing image_id: $image_id and its containers"
13 docker ps -a | grep $image_id | awk '{print $1}'| xargs docker rm -f >${redirect}
14 docker rmi $image_id >${redirect}
18 # Remove previous running containers if exist
19 functest_containers=$(docker ps -a | grep $FUNCTEST_IMAGE | awk '{print $1}')
20 if [[ -n ${functest_containers} ]]; then
21 echo " Removing existing $FUNCTEST_IMAGE containers..."
22 docker rm -f $functest_containers >${redirect}
25 # Remove existing images if exist
26 if [[ $CLEAN_DOCKER_IMAGES == true ]]; then
27 functest_image_tags=($(docker images | grep $FUNCTEST_IMAGE | awk '{print $2}'))
28 if [[ -n ${functest_image_tags} ]]; then
29 echo " Docker images to be removed:" >${redirect}
30 (docker images | head -1 && docker images | grep $FUNCTEST_IMAGE) >${redirect}
31 for tag in "${functest_image_tags[@]}"; do
32 echo " Removing docker image $FUNCTEST_IMAGE:$tag..."
33 docker rmi $FUNCTEST_IMAGE:$tag >${redirect}