From f810b5cd06ea19869af147f512f6f89495b711d0 Mon Sep 17 00:00:00 2001 From: Michael Hobbs Date: Wed, 9 Mar 2016 16:45:42 -0500 Subject: [PATCH] only remove containers with dokku label. closes #1220 --- plugins/common/functions | 4 ++-- tests/unit/30_core_1.bats | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/plugins/common/functions b/plugins/common/functions index 28379bacc..6288f5718 100755 --- a/plugins/common/functions +++ b/plugins/common/functions @@ -414,11 +414,11 @@ docker_cleanup() { declare desc="cleans up all exited/dead containers and removes all dangling images" # delete all non-running containers # shellcheck disable=SC2046 - docker rm $(docker ps -a -f 'status=exited' -q) &> /dev/null || true + docker rm $(docker ps -a -f "status=exited" -f "label=$DOKKU_CONTAINER_LABEL" -q) &> /dev/null || true # delete all dead containers # shellcheck disable=SC2046 - docker rm $(docker ps -a -f 'status=dead' -q) &> /dev/null || true + docker rm $(docker ps -a -f "status=dead" -f "label=$DOKKU_CONTAINER_LABEL" -q) &> /dev/null || true # delete unused images # shellcheck disable=SC2046 diff --git a/tests/unit/30_core_1.bats b/tests/unit/30_core_1.bats index c9eded328..42f6e0122 100644 --- a/tests/unit/30_core_1.bats +++ b/tests/unit/30_core_1.bats @@ -40,16 +40,25 @@ build_nginx_config() { echo "output: "$output echo "status: "$status assert_success + + RANDOM_RUN_CID="$(docker run -d gliderlabs/herokuish bash)" + docker ps -a run dokku cleanup echo "output: "$output echo "status: "$status assert_success sleep 5 # wait for dokku cleanup to happen in the background + docker ps -a run bash -c "docker ps -a -f 'status=exited' --no-trunc=true | grep \"/exec echo $TEST_APP\"" echo "output: "$output echo "status: "$status assert_failure + + run bash -c "docker inspect $RANDOM_RUN_CID" + echo "output: "$output + echo "status: "$status + assert_success } @test "(core) run (with DOKKU_RM_CONTAINER/--rm-container)" {