Remove sig_network_serial
[kuberef.git] / deploy.sh
index 4ecd6c6..f0bca92 100755 (executable)
--- a/deploy.sh
+++ b/deploy.sh
@@ -1,49 +1,73 @@
 #!/bin/bash
-# SPDX-license-identifier: Apache-2.0
-##############################################################################
-# Copyright (c)
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-set -o xtrace
+
+# SPDX-FileCopyrightText: 2021 Ericsson AB and others
+#
+# SPDX-License-Identifier: Apache-2.0
+
 set -o errexit
 set -o nounset
+if [ "${DEBUG:-false}" == "true" ]; then
+    set -o xtrace
+fi
 
 # Script for end to end RI-2 deployment using Infra engine and BMRA.
 # Please refer to README for detailed information.
 
 # Get path information
-DIRECTORY=$(readlink -f $0)
-CURRENTPATH=$(dirname $DIRECTORY)
+CURRENTPATH=$(git rev-parse --show-toplevel)
+export CURRENTPATH
+
+# shellcheck source=./functions.sh
+source "$CURRENTPATH/functions.sh"
+# shellcheck source=./deploy.env
+source "$CURRENTPATH/deploy.env"
+
+# ---------------------------------------------------------------------
+# check installation and runtime prerequisites
+# ---------------------------------------------------------------------
+check_prerequisites
 
-# Source env variables & functions
-source $CURRENTPATH/deploy.env
-source $CURRENTPATH/functions.sh
+# ---------------------------------------------------------------------
+# creates a virtual environment for installation of dependencies
+# ---------------------------------------------------------------------
+creates_virtualenv
 
-# Clean up leftovers
-clean_up
+# ---------------------------------------------------------------------
+# bootstrap install prerequisites
+# ---------------------------------------------------------------------
+run_playbook bootstrap
 
-# The next two functions require that you know your pxe network configuration
-# and IP of resulting jumphost VM in advance. This IP/MAC info also then needs to
-# be added in PDF & IDF files (not supported yet via this script)
-# Create jumphost VM & setup PXE network
-create_jump
-setup_PXE_network
+# ---------------------------------------------------------------------
+# Create jump VM from which the installation is performed
+# ---------------------------------------------------------------------
+run_playbook jump-vm
 
-# Get IP of the jumphost VM
-get_vm_ip
+# ---------------------------------------------------------------------
+# Create BMRA config based on IDF and PDF
+# ---------------------------------------------------------------------
+run_playbook bmra-config
 
+# ---------------------------------------------------------------------
 # Copy files needed by Infra engine & BMRA in the jumphost VM
+# ---------------------------------------------------------------------
 copy_files_jump
 
+# ---------------------------------------------------------------------
 # Provision remote hosts
-provision_hosts
-
 # Setup networking (Adapt according to your network setup)
-setup_network
+# ---------------------------------------------------------------------
+if [[ "$DEPLOYMENT" == "full" ]]; then
+    provision_hosts
+    setup_network
+fi
 
+# ---------------------------------------------------------------------
 # Provision k8s cluster (currently BMRA)
+# ---------------------------------------------------------------------
 provision_k8s
+
+# ---------------------------------------------------------------------
+# Copy kubeconfig to desired location
+# ---------------------------------------------------------------------
+copy_k8s_config
+