summaryrefslogtreecommitdiffstats
path: root/jjb/releng/opnfv-docker.sh
diff options
context:
space:
mode:
Diffstat (limited to 'jjb/releng/opnfv-docker.sh')
-rw-r--r--jjb/releng/opnfv-docker.sh30
1 files changed, 23 insertions, 7 deletions
diff --git a/jjb/releng/opnfv-docker.sh b/jjb/releng/opnfv-docker.sh
index 70baf16d9..e64764128 100644
--- a/jjb/releng/opnfv-docker.sh
+++ b/jjb/releng/opnfv-docker.sh
@@ -20,12 +20,20 @@ echo
function remove_containers_images()
{
# Remove previous running containers if exist
- if [[ -n "$(docker ps -a | grep $DOCKER_REPO_NAME)" ]]; then
+ #
+ # $ docker ps -a
+ # CONTAINER ID IMAGE COMMAND ...
+ # 6a796ed40b8e opnfv/compass-tasks:latest "/bin/bash" ...
+ # 99fcb59f4787 opnfv/compass-tasks-base:latest "/bin/bash" ...
+ # cc5eee16b995 opnfv/compass-tasks-k8s "/bin/bash" ...
+ #
+ # Cut image name by leading space and ending space or colon(tag)
+ if [[ -n "$(docker ps -a | grep " $DOCKER_REPO_NAME[ :]")" ]]; then
echo "Removing existing $DOCKER_REPO_NAME containers..."
- docker ps -a | grep $DOCKER_REPO_NAME | awk '{print $1}' | xargs docker rm -f
+ docker ps -a | grep " $DOCKER_REPO_NAME[ :]" | awk '{print $1}' | xargs docker rm -f
t=60
# Wait max 60 sec for containers to be removed
- while [[ $t -gt 0 ]] && [[ -n "$(docker ps| grep $DOCKER_REPO_NAME)" ]]; do
+ while [[ $t -gt 0 ]] && [[ -n "$(docker ps| grep " $DOCKER_REPO_NAME[ :]")" ]]; do
sleep 1
let t=t-1
done
@@ -33,12 +41,20 @@ function remove_containers_images()
# Remove existing images if exist
- if [[ -n "$(docker images | grep $DOCKER_REPO_NAME)" ]]; then
+ #
+ # $ docker images
+ # REPOSITORY TAG IMAGE ID ...
+ # opnfv/compass-tasks latest 6501569fd328 ...
+ # opnfv/compass-tasks-base latest 8764fe29c434 ...
+ # opnfv/compass-tasks-k8s latest 61094cac9e65 ...
+ #
+ # Cut image name by start of line and ending space
+ if [[ -n "$(docker images | grep "^$DOCKER_REPO_NAME ")" ]]; then
echo "Docker images to remove:"
- docker images | head -1 && docker images | grep $DOCKER_REPO_NAME
- image_ids=($(docker images | grep $DOCKER_REPO_NAME | awk '{print $3}'))
+ docker images | head -1 && docker images | grep "^$DOCKER_REPO_NAME "
+ image_ids=($(docker images | grep "^$DOCKER_REPO_NAME " | awk '{print $3}'))
for id in "${image_ids[@]}"; do
- if [[ -n "$(docker images|grep $DOCKER_REPO_NAME|grep $id)" ]]; then
+ if [[ -n "$(docker images|grep "^$DOCKER_REPO_NAME "|grep $id)" ]]; then
echo "Removing docker image $DOCKER_REPO_NAME:$id..."
docker rmi -f $id
fi