7 echo "Starting the build of Functest Docker."
8 echo "--------------------------------------------------------"
11 DOCKER_IMAGE_NAME="opnfv/functest"
16 git clone https://gerrit.opnfv.org/gerrit/releng
18 DOCKER_TAG=$($WORKSPACE/releng/utils/calculate_version.sh -t docker \
19 -n $DOCKER_IMAGE_NAME)
22 if [ $ret_val -ne 0 ]; then
23 echo "Error retrieving the version tag."
26 echo "Tag version to be build and pushed: $DOCKER_TAG"
30 # Remove previous running containers if exist
31 if [[ ! -z $(docker ps -a | grep $DOCKER_IMAGE_NAME) ]]; then
32 echo "Removing existing $DOCKER_IMAGE_NAME containers..."
33 docker ps | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker stop
34 docker ps -a | grep $DOCKER_IMAGE_NAME | awk '{{print $1}}' | xargs docker rm
38 # Remove existing images if exist
39 if [[ ! -z $(docker images | grep $DOCKER_IMAGE_NAME) ]]; then
40 echo "Docker images to remove:"
41 docker images | head -1 && docker images | grep $DOCKER_IMAGE_NAME
42 image_tags=($(docker images | grep $DOCKER_IMAGE_NAME | awk '{{print $2}}'))
43 for tag in "${{image_tags[@]}}"; do
44 echo "Removing docker image $DOCKER_IMAGE_NAME:$tag..."
45 docker rmi $DOCKER_IMAGE_NAME:$tag
51 echo "Building docker image: $DOCKER_IMAGE_NAME:$DOCKER_TAG..."
53 docker build -t $DOCKER_IMAGE_NAME:$DOCKER_TAG .
54 echo "Creating tag 'latest'..."
55 docker tag $DOCKER_IMAGE_NAME:$DOCKER_TAG $DOCKER_IMAGE_NAME:latest
58 echo "Available images are:"
62 if [ "$PUSH_IMAGE" == "true" ]; then
63 echo "Pushing $DOCKER_IMAGE_NAME:$DOCKER_TAG to the docker registry..."
64 echo "--------------------------------------------------------"
66 # Push to the Dockerhub repository
67 docker push $DOCKER_IMAGE_NAME:$DOCKER_TAG
69 echo "Updating $DOCKER_IMAGE_NAME:latest to the docker registry..."
70 docker push $DOCKER_IMAGE_NAME:latest