cd $WORKSPACE
git clone https://gerrit.opnfv.org/gerrit/releng
-DOCKER_TAG=$($WORKSPACE/releng/utils/calculate_version.sh -t docker -n $DOCKER_IMAGE_NAME)
+DOCKER_TAG=$($WORKSPACE/releng/utils/calculate_version.sh -t docker \
+ -n $DOCKER_IMAGE_NAME)
ret_val=$?
if [ $ret_val -ne 0 ]; then
echo "Tag version to be build and pushed: $DOCKER_TAG"
fi
-# Remove previous running containers
-echo "Removing existing $DOCKER_IMAGE_NAME containers..."
+
+# Remove previous running containers if exist
if [[ ! -z $(docker ps -a | grep $DOCKER_IMAGE_NAME) ]]; then
- docker ps | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker stop &>/dev/null
- docker ps -a | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker rm &>/dev/null
+ echo "Removing existing $DOCKER_IMAGE_NAME containers..."
+ docker ps | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker stop
+ docker ps -a | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker rm
fi
-# Remove existing images
-echo "Removing existing $DOCKER_IMAGE_NAME images..."
+
+# Remove existing images if exist
if [[ ! -z $(docker images | grep $DOCKER_IMAGE_NAME) ]]; then
- docker images | grep $DOCKER_IMAGE_NAME | awk '{{print $3}}' | xargs docker rmi &>/dev/null
+ echo "Docker images to remove:"
+ docker images | head -1 && docker images | grep $DOCKER_IMAGE_NAME
+ image_tags=($(docker images | grep $DOCKER_IMAGE_NAME | awk '{{print $2}}'))
+ for tag in "${{image_tags[@]}}"; do
+ echo "Removing docker image $DOCKER_IMAGE_NAME:$tag..."
+ docker rmi $DOCKER_IMAGE_NAME:$tag
+ done
fi
# Start the build
-echo "Building of $DOCKER_IMAGE_NAME:$DOCKER_TAG..."
-cd $WORKSPACE/functest/docker
+echo "Building docker image: $DOCKER_IMAGE_NAME:$DOCKER_TAG..."
+cd $WORKSPACE/docker
docker build -t $DOCKER_IMAGE_NAME:$DOCKER_TAG .
echo "Creating tag 'latest'..."
docker tag $DOCKER_IMAGE_NAME:$DOCKER_TAG $DOCKER_IMAGE_NAME:latest
echo "--------------------------------------------------------"
echo
# Push to the Dockerhub repository
- docker push -f $DOCKER_IMAGE_NAME:$DOCKER_TAG
+ docker push $DOCKER_IMAGE_NAME:$DOCKER_TAG
echo "Updating $DOCKER_IMAGE_NAME:latest to the docker registry..."
- docker push -f $DOCKER_IMAGE_NAME:latest
+ docker push $DOCKER_IMAGE_NAME:latest
fi