Add scripts to prepull and preload the docker images

Signed-off-by: Zhe Huang <zhehuang@research.att.com>
Change-Id: If575a192cbba59becc1571058ca682ab4f58e585
diff --git a/bin/preload-images b/bin/preload-images
new file mode 100755
index 0000000..a8b6a4f
--- /dev/null
+++ b/bin/preload-images
@@ -0,0 +1,76 @@
+#!/bin/bash
+##############################################################################
+#
+#   Copyright (c) 2019 AT&T Intellectual Property.
+#
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+#
+##############################################################################
+
+# Installs well-known RIC charts then verifies specified helm chart
+# Requires chart tgz archives in /tmp
+
+
+while [ -n "$1" ]; do # while loop starts
+
+    case "$1" in
+
+    -d) DOCKER_REGISTRY=$2
+        shift
+        ;;
+
+    -p) IMAGE_DIRECTORY_PATH=$2
+	shift
+	;;
+
+    *) echo "Option $1 not recognized. Please specify the docker registry path with the -d option and specify the directory path of the images with the -p option."
+	;; # In case you typed a different option other than -d or -p
+
+    esac
+
+    shift
+
+done
+
+if [ -z $DOCKER_REGISTRY ]; then
+   echo "Please specify the docker registry path with the -d option."
+   exit 1
+fi
+
+if [ -z $IMAGE_DIRECTORY_PATH ]; then
+   echo "Please specify the directory path of the images with the -p option."
+   exit 1
+fi
+
+
+
+
+for image in $IMAGE_DIRECTORY_PATH/*; do
+	OUTPUT=$(docker load -i $image)
+	IMAGE_PATH_ORIGINAL=$(echo $OUTPUT | grep image: | awk '{print $3}' )
+	IMAGENAME=$(echo $IMAGE_PATH_ORIGINAL | awk '{ n=split($0, a, "/"); print a[n] }')
+	echo "************************************************************"
+	echo "Loading image $IMAGENAME"
+        docker tag $IMAGE_PATH_ORIGINAL $DOCKER_REGISTRY/$IMAGENAME
+	RESULT=$(docker push $DOCKER_REGISTRY/$IMAGENAME 2>&1)
+        LOGIN_ERROR=$(echo $RESULT |& grep "no basic auth credentials" )
+	if [ ! -z "$LOGIN_ERROR" ]; then
+            echo "You are not logined to $DOCKER_REGISTRY. Please login by running \"docker login $DOCKER_REGISTRY\""
+	    exit 1
+	fi
+        ACCESS_ERROR=$(echo $RESULT |& grep "denied: requested access to the resource is denied" )
+	if [ ! -z "$ACCESS_ERROR" ]; then
+            echo "Failed to push image to docker registry: <$DOCKER_REGISTRY>. Please check if it is a typo."
+	    exit 1
+	fi
+done