aboutsummaryrefslogtreecommitdiffstats
path: root/onap-offline/bash/tools/deploy_kube.sh
diff options
context:
space:
mode:
Diffstat (limited to 'onap-offline/bash/tools/deploy_kube.sh')
-rwxr-xr-xonap-offline/bash/tools/deploy_kube.sh95
1 files changed, 95 insertions, 0 deletions
diff --git a/onap-offline/bash/tools/deploy_kube.sh b/onap-offline/bash/tools/deploy_kube.sh
new file mode 100755
index 0000000..f2a77be
--- /dev/null
+++ b/onap-offline/bash/tools/deploy_kube.sh
@@ -0,0 +1,95 @@
+#! /usr/bin/env bash
+
+# COPYRIGHT NOTICE STARTS HERE
+#
+# Copyright 2018 © Samsung Electronics Co., Ltd.
+#
+# 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.
+#
+# COPYRIGHT NOTICE ENDS HERE
+
+
+# fail fast
+set -e
+
+# OS check
+. /etc/os-release
+OS_ID="${ID}"
+
+case "$OS_ID" in
+ centos)
+ ;;
+ rhel)
+ ;;
+ ubuntu)
+ ;;
+ *)
+ echo This OS is not supported: $OS_ID
+ exit 1
+ ;;
+esac
+
+# boilerplate
+RELATIVE_PATH=./ # relative path from this script to 'common-functions.sh'
+if [ "$IS_COMMON_FUNCTIONS_SOURCED" != YES ] ; then
+ SCRIPT_DIR=$(dirname "${0}")
+ LOCAL_PATH=$(readlink -f "$SCRIPT_DIR")
+ . "${LOCAL_PATH}"/"${RELATIVE_PATH}"/common-functions.sh
+fi
+
+message info "Reading configuration"
+get_configuration
+if [ -z "$NODES_IPS" ] ; then
+ get_cfg_val "NODES_IPS" "Enter the public IPv4 addresses of kubernetes nodes separated by space," \
+ "\n(for example: 10.0.0.2 10.0.0.3 ...): "
+fi
+
+echo "Wait for nexus startup (1min)"
+sleep 60
+
+
+# on install server
+deploy_rancher
+deploy_kubernetes "$OS_ID"
+
+echo "Setting up ONAP Local Repo on Kubernetes nodes"
+for node in ${NODES_IPS} ; do
+ enable_remote_repo $node
+done
+
+# setup NFS on nodes
+assort_nodes_ips() {
+ nfs_server="$1"
+ shift
+ nfs_clients="$*"
+}
+assort_nodes_ips ${NODES_IPS}
+if [ -n "${nfs_clients}" ]; then
+ echo "Setting up NFS"
+ remote_setup_nfs_server $OS_ID ${nfs_server} ${nfs_clients}
+ for node in ${nfs_clients} ; do
+ remote_setup_nfs_mount $OS_ID $node ${nfs_server}
+ done
+else
+ echo "Only one node set. Skipping nfs configuration"
+fi
+
+echo "Copy ansible packages for onap ansible-server"
+for node in ${NODES_IPS} ; do
+ upload_ansible_pkgs $OS_ID $node
+done
+
+# to nodes
+for node in ${NODES_IPS} ; do
+ deploy_node $node $OS_ID
+done