[VOL-3634] Adding multi-stack support

Change-Id: I7a9e6e0d80b9ad92e7175d76ca7e93dcbe8777ec
diff --git a/.gitignore b/.gitignore
index 62bdee5..bcca11a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+.idea
 .voltha
 bin
 onos-apps
diff --git a/README.md b/README.md
index aadfd63..6a490db 100644
--- a/README.md
+++ b/README.md
@@ -71,6 +71,7 @@
 | `NAME`                                  | `minimal`                                             | Name of the KinD Cluster to be created |
 | `DEPLOY_K8S`                            | yes                                                   | Should the KinD Kubernetes cluster be deployed? |
 | `JUST_K8S`                              | no                                                    | Should just the KinD Kubernetes cluster be depoyed? (i.e. no VOLTHA) |
+| `JUST_INFRA`                            | no                                                    | Should just the infrastructure components (ETCD, KAFKA, ONOS) be deployed? |
 | `SCHEDULE_ON_CONTROL_NODES`             | no                                                    | Untaint the control plane (master) K8s nodes so that PODs may be scheduled on them |
 | `VOLTHA_NS`                             | `voltha`                                              | K8s namespace into which to deploy voltha PODs |
 | `INFRA_NS`                              | `default`                                             | K8s namespace into which to deploy infrastructure PODs |
diff --git a/voltha b/voltha
index 3c740bd..4fe8e4c 100755
--- a/voltha
+++ b/voltha
@@ -98,6 +98,7 @@
 BBSIM_CFG=${BBSIM_CFG:-configs/bbsim-sadis-att.yaml}
 INSTALL_ONOS_APPS=${INSTALL_ONOS_APPS:-no}
 JUST_K8S=${JUST_K8S:-no}
+JUST_INFRA=${JUST_INFRA:-no}
 DEPLOY_K8S=${DEPLOY_K8S:-yes}
 INSTALL_KUBECTL=${INSTALL_KUBECTL:-yes}
 INSTALL_HELM=${INSTALL_HELM:-yes}
@@ -131,7 +132,7 @@
 ONOS_CLASSIC_CHART_VERSION=${ONOS_CLASSIC_CHART_VERSION:-latest}
 KAFKA_CHART=${KAFKA_CHART:-bitnami/kafka}
 KAFKA_CHART_VERSION=${KAFKA_CHART_VERSION:=latest}
-BBSIM_SADIS_SERVER_CHART=${BBSIM_SADIS_SERVER_CHART:-bbsim-sadis/bbsim-sadis-server}
+BBSIM_SADIS_SERVER_CHART=${BBSIM_SADIS_SERVER_CHART:-onf/bbsim-sadis-server}
 BBSIM_SADIS_SERVER_CHART_VERSION=${BBSIM_SADIS_SERVER_CHART_VERSION:-latest}
 ETCD_CHART=${ETCD_CHART:-bitnami/etcd}
 ETCD_CHART_VERSION=${ETCD_CHART_VERSION:-latest}
@@ -140,6 +141,7 @@
 EXTRA_HELM_INSTALL_ARGS=${EXTRA_HELM_INSTALL_ARGS:-}
 INTERNAL_EXTRA_HELM_INSTALL_ARGS=
 NUM_OF_BBSIM=${NUM_OF_BBSIM:-1}
+BBSIM_BASE_INDEX=${BBSIM_BASE_INDEX:-1}
 NUM_OF_WORKER_NODES=${NUM_OF_WORKER_NODES:-2}
 NUM_OF_CONTROLLER_NODES=${NUM_OF_CONTROLLER_NODES:-1}
 NUM_OF_OPENONU=${NUM_OF_OPENONU:-1}
@@ -352,6 +354,7 @@
     WITH_PPROF \
     WITH_INCREMENTAL_EVTO_UPDATE \
     JUST_K8S \
+    JUST_INFRA \
     DEPLOY_K8S \
     INSTALL_ONOS_APPS \
     INSTALL_KUBECTL \
@@ -593,50 +596,38 @@
 
 mkdir -p .voltha
 touch .voltha/ports
-HAVE="$(grep "$NAME" .voltha/ports)"
-if [ "$HAVE X" == " X" ]; then
-    # Find free port prefix
-    START=81
-    while true; do
-        if [ "$(grep -c $START .voltha/ports)" -eq 0 ]; then
-            break
-        fi
-        START="$((START + 1))"
-    done
-    DELTA="$((START - 81))"
-    ONOS_API_PORT=${ONOS_API_PORT:-${START}81}
-    ONOS_SSH_PORT=${ONOS_SSH_PORT:-${START}01}
-    VOLTHA_API_PORT=${VOLTHA_API_PORT:-5$((55 + DELTA))55}
-    VOLTHA_SSH_PORT=${VOLTHA_SSH_PORT:-$((50 + DELTA))22}
-    VOLTHA_ETCD_PORT=${VOLTHA_ETCD_PORT:-$((23 + DELTA))79}
-    VOLTHA_KAFKA_PORT=${VOLTHA_KAFKA_PORT:-$((90 + DELTA))92}
-    VOLTHA_PPROF_PORT=${VOLTHA_PPROF_PORT:-$((60 + DELTA))60}
-    OPENOLT_PPROF_PORT=${OPENOLT_PPROF_PORT:-$((60 + DELTA))61}
-    OFAGENT_PPROF_PORT=${OFAGENT_PPROF_PORT:-$((60 + DELTA))62}
-    ELASTICSEARCH_PORT=${ELASTICSEARCH_PORT:-$((92 + DELTA))00}
-    KIBANA_PORT=${KIBANA_PORT:-$((56 + DELTA))01}
-    TRACING_GUI_PORT=${TRACING_GUI_PORT:-1$((66 + DELTA))86}
-else
-    VALUES="$(echo "$HAVE" | sed -e 's/\s//g' | cut -d= -f2)"
-    ONOS_API_PORT=${ONOS_API_PORT:-$(echo "$VALUES" | cut -d, -f1)}
-    ONOS_SSH_PORT=${ONOS_SSH_PORT:-$(echo "$VALUES" | cut -d, -f2)}
-    VOLTHA_API_PORT=${VOLTHA_API_PORT:-$(echo "$VALUES" | cut -d, -f3)}
-    VOLTHA_SSH_PORT=${VOLTHA_SSH_PORT:-$(echo "$VALUES" | cut -d, -f4)}
-    VOLTHA_ETCD_PORT=${VOLTHA_ETCD_PORT:-$(echo "$VALUES" | cut -d, -f5)}
-    VOLTHA_KAFKA_PORT=${VOLTHA_KAFKA_PORT:-$(echo "$VALUES" | cut -d, -f6)}
-    VOLTHA_PPROF_PORT=${VOLTHA_PPROF_PORT:-$(echo "$VALUES" | cut -d, -f7)}
-    OPENOLT_PPROF_PORT=${OPENOLT_PPROF_PORT:-$(echo "$VALUES" | cut -d, -f8)}
-    OFAGENT_PPROF_PORT=${OFAGENT_PPROF_PORT:-$(echo "$VALUES" | cut -d, -f9)}
-    ELASTICSEARCH_PORT=${ELASTICSEARCH_PORT:-$(echo "$VALUES" | cut -d, -f10)}
-    KIBANA_PORT=${KIBANA_PORT:-$(echo "$VALUES" | cut -d, -f11)}
-    TRACING_GUI_PORT=${TRACING_GUI_PORT:-$(echo "$VALUES" | cut -d, -f12)}
 
-    # Some ports were added after the .voltha/ports files was created.
-    # Calculate the original DELTA from the VOLTHA_SSH_PORT so that it can
-    # be used to set up newer port-forwards.
-    DELTA="$((VOLTHA_SSH_PORT/100-50))"
+VOLTHA_API_PORT=55555
+START=$VOLTHA_API_PORT
 
-    if [ -z "$VOLTHA_KAFKA_PORT" ]; then
+# check if the stack deployed with $NAME already exists
+STACK_EXISTS=false
+if [ "$(grep -c "$NAME" .voltha/ports)" -eq 1 ]; then
+    STACK_EXISTS=true
+fi
+
+if [ "$STACK_EXISTS" == true ]; then
+  # if the stack was previously deployed reuse the ports
+  HAVE="$(grep "$NAME" .voltha/ports)"
+  VALUES="$(echo "$HAVE" | sed -e 's/\s//g' | cut -d= -f2)"
+  ONOS_API_PORT=$(echo "$VALUES" | cut -d, -f1)
+  ONOS_SSH_PORT=$(echo "$VALUES" | cut -d, -f2)
+  VOLTHA_API_PORT=$(echo "$VALUES" | cut -d, -f3)
+  VOLTHA_SSH_PORT=$(echo "$VALUES" | cut -d, -f4)
+  VOLTHA_ETCD_PORT=$(echo "$VALUES" | cut -d, -f5)
+  VOLTHA_KAFKA_PORT=$(echo "$VALUES" | cut -d, -f6)
+  VOLTHA_PPROF_PORT=$(echo "$VALUES" | cut -d, -f7)
+  OPENOLT_PPROF_PORT=$(echo "$VALUES" | cut -d, -f8)
+  OFAGENT_PPROF_PORT=$(echo "$VALUES" | cut -d, -f9)
+  ELASTICSEARCH_PORT=$(echo "$VALUES" | cut -d, -f10)
+  KIBANA_PORT=$(echo "$VALUES" | cut -d, -f11)
+  TRACING_GUI_PORT=$(echo "$VALUES" | cut -d, -f12)
+
+  # Some ports were added after the .voltha/ports files was created.
+  # Calculate the original DELTA from the VOLTHA_SSH_PORT so that it can
+  # be used to set up newer port-forwards.
+  DELTA="$((VOLTHA_SSH_PORT/100-50))"
+  if [ -z "$VOLTHA_KAFKA_PORT" ]; then
         VOLTHA_KAFKA_PORT=${VOLTHA_KAFKA_PORT:-$((90 + DELTA))92}
     fi
 
@@ -660,6 +651,30 @@
     if [ -z "$TRACING_GUI_PORT" ]; then
       TRACING_GUI_PORT=${TRACING_GUI_PORT:-1$((66 + DELTA))86}
     fi
+else
+  # Find free port prefix
+   START=81
+   while true; do
+       if [ "$(grep -c $START .voltha/ports)" -eq 0 ]; then
+           break
+       fi
+       START="$((START + 1))"
+   done
+
+   # create new ports starting from the first available
+   DELTA="$((START - 81))"
+   ONOS_API_PORT=${START}81
+   ONOS_SSH_PORT=${START}01
+   VOLTHA_API_PORT=5$((55 + DELTA))55
+   VOLTHA_SSH_PORT=$((50 + DELTA))22
+   VOLTHA_ETCD_PORT=$((23 + DELTA))79
+   VOLTHA_KAFKA_PORT=$((90 + DELTA))92
+   VOLTHA_PPROF_PORT=$((60 + DELTA))60
+   OPENOLT_PPROF_PORT=$((60 + DELTA))61
+   OFAGENT_PPROF_PORT=$((60 + DELTA))62
+   ELASTICSEARCH_PORT=$((92 + DELTA))00
+   KIBANA_PORT=$((56 + DELTA))01
+   TRACING_GUI_PORT=$((66 + DELTA))86
 fi
 
 PORTTMP="$(mktemp -u)"
@@ -800,6 +815,7 @@
     >&2 echo "What wouild you like to do today:"
     >&2 echo "  up   - bring up voltha"
     >&2 echo "  down - tear down voltha"
+    >&2 echo "  clean - remove everything that kind-voltha created"
     >&2 echo "  dump - create a debug dump of running system"
     exit 1
 fi
@@ -1047,19 +1063,20 @@
     local NS=$1; shift
     local SVC=$1; shift
     local PORTS="$*"
-    local TAG=$SVC-$NAME
+    local TAG=$SVC-$NS-$NAME
 
     (set -x; _TAG="$TAG" bash -c "while true; do kubectl port-forward --address $PF_ADDRESS -n $NS service/$SVC $PORTS; done" >>"$PFLOG" 2>&1 &) >>"$PFLOG" 2>&1
 }
 
 kill_port_forward() {
-    local TAG P_IDS PARENTS KIDS UNKNOWN PP_ID PF
+    local TAG P_IDS PARENTS KIDS UNKNOWN PP_ID PF NS
 
     while [ $# -gt 0 ]; do
+        NS=$1; shift
         PF=$1; shift
         TAG=
         if [ "$PF" != "__ALL__" ]; then
-            TAG="$PF"
+            TAG=$SVC-$NS-$NAME
         fi
         PARENTS=
         KIDS=
@@ -1121,47 +1138,53 @@
 }
 
 if [ "$1" == "down" ]; then
+    # NOTE ./voltha down tears down all the stacks, it should only remove components in the specified namespaces
     echo "Tearing down voltha cluster $NAME"
+
     LOG="down-$NAME.log"
     date -u +"%Y%m%dT%H%M%SZ" >"$LOG"
     HELM_MAJOR=$(helm version --client --short | sed -E -e 's/^.*v([0-9]+)\.[0-9]+\.[0-9]+.*$/\1/')
     if is_in "$WITH_ONOS" "yes,legacy,classic"; then
         bspin "Remove port-forwards: onos-ui-$NAME"
-        kill_port_forward onos-ui
+        kill_port_forward "$INFRA_NS" onos-ui
         sspin "Remove port-forwards: onos-ssh-$NAME$CEOL"
-        kill_port_forward onos-ssh
+        kill_port_forward "$INFRA_NS" onos-ssh
         sspin "Remove port-forwards: onos-onos-classic-hs-$NAME$CEOL"
-        kill_port_forward onos-onos-classic-hs
+        kill_port_forward "$INFRA_NS" onos-onos-classic-hs
     fi
     sspin "Remove port-forwards: voltha-api-$NAME$CEOL"
-    kill_port_forward voltha-api voltha-voltha-api
+    kill_port_forward "$VOLTHA_NS" voltha-api
+    kill_port_forward "$VOLTHA_NS" voltha-voltha-api
     if is_in "$WITH_ETCD" "yes,external"; then
         sspin "Remove port-forwards: etcd-$NAME$CEOL"
-        kill_port_forward "etcd"
+        kill_port_forward "$INFRA_NS" "etcd"
     fi
     if is_in "$WITH_KAFKA" "yes,external"; then
         sspin "Remove port-forwards: kafka-$NAME$CEOL"
-        kill_port_forward "kafka"
+        kill_port_forward "$INFRA_NS" "kafka"
     fi
 
     if is_in "$WITH_BBSIM" "yes"; then
         sspin "Remove port-forwards: bbsim$CEOL"
-        kill_port_forward bbsim
+        kill_port_forward "$VOLTHA_NS" bbsim
     fi
 
     if [ "$WITH_PPROF" == "yes" ]; then
         sspin "Remove port-forwards: *-profiler$CEOL"
-        kill_port_forward voltha-rw-core-profiler voltha-voltha-rw-core-profiler
-        kill_port_forward voltha-of-agent-profiler voltha-voltha-of-agent-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-rw-core-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-voltha-rw-core-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-of-agent-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-voltha-of-agent-profiler
         if [ "$WITH_OPEN_ADAPTERS" == "yes" ]; then
-            kill_port_forward adapter-open-olt-profiler open-olt-adapter-open-olt-profiler
+            kill_port_forward "$VOLTHA_NS" adapter-open-olt-profiler
+            kill_port_forward "$VOLTHA_NS" open-olt-adapter-open-olt-profiler
         fi
     fi
 
     if [ "$WITH_TRACING" == "yes" ]; then
         sspin "Remove port-forwards: tracing-$NAME$CEOL"
         VOLTHA_TRACING_CHART_NAME=$(resolve_chart_name "$VOLTHA_TRACING_CHART")
-        kill_port_forward "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui"
+        kill_port_forward "$INFRA_NS" "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui"
     fi
 
     espin "$VERIFIED Remove port-forwards$CEOL"
@@ -1358,10 +1381,10 @@
     fi
 done
 
-# Force remove any existing k8s port-forward processes. This will
-# remove them for all kind clusters.
+# Remove everything we created and set
 if [ "$1" == "clean" ]; then
-    kill_port_forward __ALL__
+    echo "Cleaning up the system"
+    kill_port_forward all-namespaces __ALL__
     exit
 fi
 
@@ -1494,6 +1517,8 @@
     espin "$INDENT" "$VERIFIED"
 }
 
+bspin "Installing VOLTHA: $NAME $GEAR"
+espin "$VERIFIED"
 echo "INSTALL NAME: $NAME" >> "$LOG"
 
 STIME="$(date +%s)"
@@ -1823,7 +1848,6 @@
     incubator|https://kubernetes-charts-incubator.storage.googleapis.com|Google_Incubator \
     onos|https://charts.onosproject.org|ONF_ONOS \
     atomix|https://charts.atomix.io|ONF_Atomix \
-    bbsim-sadis|https://ciena.github.io/bbsim-sadis-server/charts|Custom_BBSIM_SADIS_Server \
     elastic|https://helm.elastic.co|Elastic \
     kiwigrid|https://kiwigrid.github.io|Fluentd-ElasticSearch\
     bitnami|https://charts.bitnami.com/bitnami|Bitnami"
@@ -1947,7 +1971,7 @@
 fi
 
 if [ "$JUST_K8S" == "yes" ]; then
-    echo "Environment deployed, not deploying VOLTHA artifacts as requested. Good bye."
+    echo "Environment deployed, not deploying VOLTHA artifacts as requested. Good bye." | tee -a "$LOG"
     echo ""
     echo "Please issue the following commands in your terminal to ensure that you" | tee -a "$LOG"
     echo "are accessing the correct Kubernetes/Kind cluster as well as have the  " | tee -a "$LOG"
@@ -1988,6 +2012,13 @@
     fi
 fi
 
+if [ "$WITH_ETCD" == "yes" ] && [ "$WITH_PORT_FORWARDS" == "yes" ]; then
+    bspin - "Forward VOLTHA ETCD port $FORWARD"
+    kill_port_forward "$INFRA_NS" "etcd"
+    port_forward "$INFRA_NS" "etcd" "$VOLTHA_ETCD_PORT:2379"
+    espin - "$VERIFIED"
+fi
+
 if is_in "$WITH_KAFKA" "yes,external"; then
     _TMP="$(mktemp -u)"
     cat << EOC > "$_TMP"
@@ -2020,6 +2051,14 @@
         printtime $((NOW - STIME))
     fi
     rm -rf "$_TMP"
+
+fi
+
+if [ "$WITH_KAFKA" == "yes" ] && [ "$WITH_PORT_FORWARDS" == "yes" ]; then
+  bspin - "Forward VOLTHA Kafka port $FORWARD"
+  kill_port_forward "$INFRA_NS" "kafka"
+  port_forward "$INFRA_NS" kafka "$VOLTHA_KAFKA_PORT:9092"
+  espin - "$VERIFIED"
 fi
 
 
@@ -2038,11 +2077,11 @@
 
         if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
             bspin - "Forward ONOS API port $FORWARD"
-            kill_port_forward onos-ui
+            kill_port_forward "$INFRA_NS" onos-ui
             port_forward "$INFRA_NS" onos-ui "$ONOS_API_PORT:8181"
             espin - "$VERIFIED"
             bspin - "Forward ONOS SSH port $FORWARD"
-            kill_port_forward onos-ssh
+            kill_port_forward "$INFRA_NS" onos-ssh
             port_forward "$INFRA_NS" onos-ssh "$ONOS_SSH_PORT:8101"
             espin - "$VERIFIED"
             _ONOS_API_EP="127.0.0.1:$ONOS_API_PORT"
@@ -2090,21 +2129,24 @@
             espin "$VERIFIED"
         fi
         wait_for_pods - "$INFRA_NS" $((NUM_OF_ONOS + NUM_OF_ATOMIX)) "includes" "Waiting for ONOS CLASSIC to start" "$NO_LABEL" "onos-.*"
-        if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
-            bspin - "Forward ONOS API port $FORWARD"
-            kill_port_forward onos-onos-classic-hs
-            port_forward "$INFRA_NS" onos-onos-classic-hs "$ONOS_API_PORT:8181" "$ONOS_SSH_PORT:8101"
-            espin - "$VERIFIED"
-            _ONOS_API_EP="127.0.0.1:$ONOS_API_PORT"
-        else
-            _ONOS_API_EP="$(get_service_ep "$INFRA_NS" onos-onos-classic-hs)"
-        fi
     elif [ "$WITH_ONOS" == "micro" ]; then
         bspin "Verify micro-ONOS installed $BIRD"
         # We should never get here
         >&2 echo -e "${RED}${BOLD}${ERROR}ERROR:${NORMAL}${RED} Micro ONOS not currently supported${NORMAL}"
         exit 1
     fi
+
+    if is_in "$WITH_ONOS" "yes,classic" && [ "$WITH_PORT_FORWARDS" == "yes" ]; then
+        bspin - "Forward ONOS API port $FORWARD"
+        SVC=
+        kill_port_forward "$INFRA_NS" onos-onos-classic-hs
+        port_forward "$INFRA_NS" onos-onos-classic-hs "$ONOS_API_PORT:8181" "$ONOS_SSH_PORT:8101"
+        espin - "$VERIFIED"
+        _ONOS_API_EP="127.0.0.1:$ONOS_API_PORT"
+    else
+        _ONOS_API_EP="$(get_service_ep "$INFRA_NS" onos-onos-classic-hs)"
+    fi
+
     bspin - "Verify or download ONOS configuration support files $DOWNLOAD"
     ONOS_FILES="olt-onos-enableExtraneousRules.json onos-aaa.json \
         onos-dhcpl2relay.json onos-sadis-sample.json"
@@ -2270,6 +2312,145 @@
     printtime $((NOW - STIME))
 fi
 
+if [ "$WITH_RADIUS" == "yes" ]; then
+    STIME="$(date +%s)"
+    echo -e "Verify RADIUS $LOCK"
+    bspin - "Verify RADIUS Installed"
+    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^radius\$")" -ne 1 ]; then
+        espin - "$NOT_VERIFIED"
+        helm_install - "$INFRA_NS" radius "$RADIUS_CHART" "$RADIUS_CHART_VERSION" "+radius" "$_HELM_DESC RADIUS"
+    else
+        espin - "$VERIFIED"
+    fi
+    wait_for_pods - "$INFRA_NS" 1 "includes" "Waiting for RADIUS to start" "$NO_LABEL" "radius-.*"
+    if [ "$WITH_TIMINGS" == "yes" ]; then
+        NOW="$(date +%s)"
+        printtime $((NOW - STIME))
+    fi
+fi
+
+if is_in "$WITH_ONOS" "yes,legacy,classic" && [ "$WITH_RADIUS" != "no" ]; then
+    SVC_NAME=radius
+    if kubectl get -n "$INFRA_NS" "svc/radius-freeradius" >/dev/null 2>&1; then
+        SVC_NAME="radius-freeradius"
+    fi
+    _HOST="$SVC_NAME.$INFRA_NS.svc"
+    _PORT=1812
+    if [ "$WITH_RADIUS" != "yes" ]; then
+        _HOST="$(echo "$WITH_RADIUS" | cut -d: -f1)"
+        _PORT="$(echo "$WITH_RADIUS" | cut -s -d: -f2)"
+        _PORT=${_PORT:-1812}
+    fi
+    bspin "Configure ONOS RADIUS Connection $GEAR"
+    (set -x; sed -e "s/:RADIUS_SVC:/$_HOST/g" -e "s/:RADIUS_PORT:/$_PORT/" onos-files/onos-aaa.json | curl --fail -sSL --user karaf:karaf -X POST "http://$_ONOS_API_EP/onos/v1/network/configuration/apps/org.opencord.aaa" -H Content-type:application/json -d@- >>"$LOG" 2>&1) >>"$LOG" 2>&1
+    espin "$VERIFIED"
+fi
+
+if [ "$CONFIG_SADIS" == "external" ]; then
+    STIME="$(date +%s)"
+    echo -e "Verify BBSIM SADIS Service $PLUG"
+    bspin - "Verify required configmap"
+    (set -x; kubectl -n "$INFRA_NS" delete --ignore-not-found configmap kube-config >>"$LOG" 2>&1) >>"$LOG" 2>&1
+    (set -x; kubectl -n "$INFRA_NS" create configmap kube-config "--from-file=kube_config=$KUBECONFIG" >>"$LOG" 2>&1) >>"$LOG" 2>&1
+    espin - "$VERIFIED"
+    bspin - "Verify BBSIM SADIS Service Installed"
+    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^bbsim-sadis-server\$")" -ne 1 ]; then
+        espin - "$NOT_VERIFIED"
+        INTERNAL_EXTRA_HELM_INSTALL_ARGS="$EXTRA_HELM_FLAGS" helm_install - "$INFRA_NS" bbsim-sadis-server "$BBSIM_SADIS_SERVER_CHART" "$BBSIM_SADIS_SERVER_CHART_VERSION" "+sadis" "$_HELM_DESC BBSIM SADIS Server"
+        INTERNAL_EXTRA_HELM_INSTALL_ARGS=
+    else
+        espin - "$VERIFIED"
+    fi
+    wait_for_pods - "$INFRA_NS" 1 "includes" "Waiting for BBSIM SADIS Server to start" "$NO_LABEL" "bbsim-sadis-server-.*"
+
+    if is_in "$WITH_ONOS" "yes,classic,legacy"; then
+        if kubectl get -n "$INFRA_NS" svc/bbsim-sadis-server-bbsim-sadis-server >/dev/null 2>&1; then
+            BBSIM_SADIS_SVC="bbsim-sadis-server-bbsim-sadis-server"
+        else
+            BBSIM_SADIS_SVC="bbsim-sadis-server"
+        fi
+        push_onos_config "json" \
+            "[optional] Push ONOS configuration for custom SADIS and Bandwidth Profile servers" \
+            "network/configuration/apps/org.opencord.sadis" \
+            "$(cat <<EOJ | tr -d '[:space:]'
+{
+    "sadis": {
+        "integration": {
+            "url": "http://$BBSIM_SADIS_SVC.$INFRA_NS.svc:58080/subscribers/%s",
+            "cache": {
+                "enabled": true,
+                "maxsize": 50,
+                "ttl": "PT1m"
+            }
+        }
+    },
+    "bandwidthprofile": {
+        "integration": {
+            "url": "http://$BBSIM_SADIS_SVC.$INFRA_NS.svc:58080/profiles/%s",
+            "cache": {
+                "enabled": true,
+                "maxsize": 50,
+                "ttl": "PT1m"
+            }
+        }
+    }
+}
+EOJ
+)"
+    fi
+    if [ "$WITH_TIMINGS" == "yes" ]; then
+        NOW="$(date +%s)"
+        printtime $((NOW - STIME))
+    fi
+fi
+
+if [ "$WITH_EFK" == "yes" ]; then
+    STIME="$(date +%s)"
+    echo -e "Verify EFK $PLUG"
+    bspin - "Verify EFK Installed"
+    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^elasticsearch\$")" -ne 1 ] || [ "$(helm_is_deployed "$INFRA_NS" "^kibana\$")" -ne 1 ] || [ "$(helm_is_deployed "$INFRA_NS" "^fluentd\$")" -ne 1 ]; then
+          espin - "$NOT_VERIFIED"
+          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^elasticsearch\$")" -ne 1 ]; then
+              helm_install - "$INFRA_NS" elasticsearch "$ELASTICSEARCH_CHART" "$ELASTICSEARCH_CHART_VERSION" elasticsearch "$_HELM_DESC elasticsearch"
+          fi
+          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^kibana\$")" -ne 1 ]; then
+              helm_install - "$INFRA_NS" kibana  "$KIBANA_CHART" "$KIBANA_CHART_VERSION" kibana "$_HELM_DESC kibana"
+          fi
+          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^fluentd\$")" -ne 1 ]; then
+              helm_install - "$INFRA_NS" fluentd  "$FLUENTD_ELASTICSEARCH_CHART" "$FLUENTD_ELASTICSEARCH_CHART_VERSION" fluentd-elasticsearch "$_HELM_DESC fluentd-elasticsearch"
+          fi
+    else
+            espin - "$VERIFIED"
+    fi
+    EXPECT=2 # for elastic and kibana
+    if [ "$TYPE" == "minimal" ]; then
+        EXPECT=$((EXPECT + 2)) # for fluentd on worker 2 worker nodes
+    else
+        EXPECT=$((EXPECT + 3)) # for fluentd on worker 3 worker nodes
+    fi
+    if [ "$SCHEDULE_ON_CONTROL_NODES" == "yes" ]; then
+        EXPECT=$((EXPECT + 1)) # for fluentd on the control plan node
+    fi
+
+    wait_for_pods - "$INFRA_NS" "$EXPECT" "includes" "Waiting for EFK to start" "$NO_LABEL" "fluentd-* elasticsearch-* kibana-*"
+
+    if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
+        bspin - "Forward EFK port $FORWARD"
+        kill_port_forward "$INFRA_NS" elasticsearch-master
+        kill_port_forward "$INFRA_NS" kibana-kibana
+        port_forward "$INFRA_NS" elasticsearch-master "$ELASTICSEARCH_PORT:9200"
+        port_forward "$INFRA_NS" kibana-kibana "$KIBANA_PORT:5601"
+        espin - "$VERIFIED"
+    fi
+
+    do_curl "" "POST" "" "" "http://localhost:$KIBANA_PORT/api/saved_objects/index-pattern/logst*" "json" '{"attributes":{"title":"logst*","timeFieldName":"@timestamp"}}' "Verify logging index in EFK" "409,200" "-H Content-type:application/json -H kbn-xsrf:true" "$GEAR"
+
+    if [ "$WITH_TIMINGS" == "yes" ]; then
+        NOW="$(date +%s)"
+        printtime $((NOW - STIME))
+    fi
+fi
+
 if [ "$WITH_TRACING" == "yes" ]; then
     STIME="$(date +%s)"
     echo -e "Verify Jaeger Tracing $PLUG"
@@ -2282,16 +2463,77 @@
         espin - "$VERIFIED"
     fi
     wait_for_pods - "$INFRA_NS" 1 "includes" "Waiting for Jaeger Tracing to start" "$NO_LABEL" "jaeger*"
+
+    if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
+      bspin - "Forward VOLTHA Tracing GUI port $FORWARD"
+      VOLTHA_TRACING_CHART_NAME=$(resolve_chart_name "$VOLTHA_TRACING_CHART")
+      kill_port_forward "$INFRA_NS" "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui"
+      port_forward "$INFRA_NS" "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui" "$TRACING_GUI_PORT:16686"
+      espin - "$VERIFIED"
+    fi
+
     if [ "$WITH_TIMINGS" == "yes" ]; then
         NOW="$(date +%s)"
         printtime $((NOW - STIME))
     fi
 fi
 
+if [ "$JUST_INFRA" == "yes" ]; then
+  echo "Infrastructure deployed, not deploying VOLTHA artifacts as requested. Good bye." | tee -a "$LOG"
+  echo ""
+  echo "Please issue the following commands in your terminal to ensure that you" | tee -a "$LOG"
+  echo "are accessing the correct Kubernetes/Kind cluster as well as have the  " | tee -a "$LOG"
+  echo "tools required by VOLTHA in your command path.                         " | tee -a "$LOG"
+  echo "" | tee -a "$LOG"
+
+  echo -en "$BOLD"
+  if [ "$DEPLOY_K8S" == "yes" ]; then
+      echo "export KUBECONFIG=\"$HOME/.kube/kind-config-voltha-$NAME\"" | tee -a "$LOG"
+  fi
+  echo "export VOLTCONFIG=\"$HOME/.volt/config-$NAME\"" | tee -a "$LOG"
+  echo "export PATH=$GOPATH/bin:\$PATH" | tee -a "$LOG"
+  echo " "
+  echo -en "$NORMAL"
+  echo "To configure your VOLTHA stack to use this infrastructure please export these variables:" | tee -a "$LOG"
+  echo -en "$BOLD"
+  echo "  export INFRA_NS=$INFRA_NS"
+  echo "  export WITH_ETCD=etcd.$INFRA_NS.svc:2379"
+  echo "  export WITH_KAFKA=kafka.$INFRA_NS.svc:9092"
+  echo "  export WITH_ONOS=onos-onos-classic-hs.$INFRA_NS.svc:6653"
+  echo -en "$NORMAL"
+  echo " "
+  echo "Or use:"
+  echo " "
+  echo -en "$BOLD"
+  echo "  INFRA_NS=$INFRA_NS WITH_ETCD=etcd.$INFRA_NS.svc:2379 WITH_KAFKA=kafka.$INFRA_NS.svc:9092 WITH_ONOS=onos-onos-classic-hs.$INFRA_NS.svc:6653 ./voltha up"
+  echo -en "$NORMAL"
+  echo " "
+  echo "If you are deploying mutltiple VOLTHA stack, also remember to configure a different NAME, NAMESPACE and BBSIM_BASE_INDEX for each stack:"
+  echo -en "$BOLD"
+  echo "  export NAME=voltha1"
+  echo "  export VOLTHA_NS=voltha1"
+  echo "  export ADAPTER_NS=voltha1"
+  echo "  export BBSIM_NS=voltha1"
+  echo "  export BBSIM_BASE_INDEX=1"
+  echo -en "$NORMAL"
+  echo " "
+  echo "Or use:"
+  echo " "
+  echo -en "$BOLD"
+  echo "  INFRA_NS=$INFRA_NS WITH_ETCD=etcd.$INFRA_NS.svc:2379 WITH_KAFKA=kafka.$INFRA_NS.svc:9092 WITH_ONOS=onos-onos-classic-hs.$INFRA_NS.svc:6653" \
+    "NAME=voltha1 VOLTHA_NS=voltha1 ADAPTER_NS=voltha1 BBSIM_NS=voltha1 BBSIM_BASE_INDEX=1 ./voltha up"
+  echo -en "$NORMAL"
+  exit 0
+fi
+
 STIME="$(date +%s)"
 EXPECT=2
 # therecanbeonlyone set hardcoded to true for backward compatibility
 INTERNAL_EXTRA_HELM_INSTALL_ARGS="--set therecanbeonlyone=true"
+
+# customize the topics in case of multiple stacks sharing the same kafka
+INTERNAL_EXTRA_HELM_INSTALL_ARGS+=" --set defaults.topics.core_topic=$NAME-rwcore,defaults.kv_store_data_prefix=service/$NAME"
+
 case $WITH_ETCD in
     no)
         ;;
@@ -2380,6 +2622,7 @@
 if [ "$WITH_ADAPTERS" == "yes" ]; then
     STIME="$(date +%s)"
     EXPECT=0
+    INTERNAL_EXTRA_HELM_INSTALL_ARGS+=" --set defaults.topics.core_topic=$NAME-rwcore,defaults.topics.adapter_open_olt_topic=$NAME-openolt,defaults.topics.adapter_open_onu_topic=$NAME-brcm_openomci_onu,defaults.kv_store_data_prefix=service/$NAME"
     if is_in "$WITH_ETCD" "yes,external"; then
         _HOST=etcd.$INFRA_NS.svc
         _PORT=2379
@@ -2460,6 +2703,7 @@
     STIME="$(date +%s)"
     echo -e "Verify BBSIM $PLUG"
     bspin - "Verify BBSIM Installed"
+
     for instance in $(seq 0 $((NUM_OF_BBSIM-1))); do
 
         if [ "$LEGACY_BBSIM_INDEX" == "yes" ]; then
@@ -2483,8 +2727,7 @@
               _TAG="$((900+instance))"
               BBSIM_TMP="$(mktemp -u)"
               sed -e "s/\":TAG:\"/$_TAG/g" "$BBSIM_CFG" > "$BBSIM_TMP"
-
-              INTERNAL_EXTRA_HELM_INSTALL_ARGS="--set olt_id=$instance -f $BBSIM_TMP"
+              INTERNAL_EXTRA_HELM_INSTALL_ARGS="--set olt_id=$BBSIM_BASE_INDEX$instance -f $BBSIM_TMP"
             else
               # these are older versio of BBSim
               S_TAG="$((900+instance))"
@@ -2522,7 +2765,7 @@
     if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
       for instance in $(seq 0 $((NUM_OF_BBSIM-1))); do
           bspin - "Forward BBSIM DMI port $FORWARD"
-          kill_port_forward "bbsim"
+          kill_port_forward "$BBSIM_NS" "bbsim${instance}"
           _PORT=$((50075+instance))
           port_forward "$BBSIM_NS" "bbsim${instance}" "50075:$_PORT"
           espin - "$VERIFIED"
@@ -2535,120 +2778,11 @@
     fi
 fi
 
-if [ "$WITH_EFK" == "yes" ]; then
-    STIME="$(date +%s)"
-    echo -e "Verify EFK $PLUG"
-    bspin - "Verify EFK Installed"
-    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^elasticsearch\$")" -ne 1 ] || [ "$(helm_is_deployed "$INFRA_NS" "^kibana\$")" -ne 1 ] || [ "$(helm_is_deployed "$INFRA_NS" "^fluentd\$")" -ne 1 ]; then
-          espin - "$NOT_VERIFIED"
-          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^elasticsearch\$")" -ne 1 ]; then
-              helm_install - "$INFRA_NS" elasticsearch "$ELASTICSEARCH_CHART" "$ELASTICSEARCH_CHART_VERSION" elasticsearch "$_HELM_DESC elasticsearch"
-          fi
-          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^kibana\$")" -ne 1 ]; then
-              helm_install - "$INFRA_NS" kibana  "$KIBANA_CHART" "$KIBANA_CHART_VERSION" kibana "$_HELM_DESC kibana"
-          fi
-          if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^fluentd\$")" -ne 1 ]; then
-              helm_install - "$INFRA_NS" fluentd  "$FLUENTD_ELASTICSEARCH_CHART" "$FLUENTD_ELASTICSEARCH_CHART_VERSION" fluentd-elasticsearch "$_HELM_DESC fluentd-elasticsearch"
-          fi
-    else
-            espin - "$VERIFIED"
-    fi
-    EXPECT=2 # for elastic and kibana
-    if [ "$TYPE" == "minimal" ]; then
-        EXPECT=$((EXPECT + 2)) # for fluentd on worker 2 worker nodes
-    else
-        EXPECT=$((EXPECT + 3)) # for fluentd on worker 3 worker nodes
-    fi
-    if [ "$SCHEDULE_ON_CONTROL_NODES" == "yes" ]; then
-        EXPECT=$((EXPECT + 1)) # for fluentd on the control plan node
-    fi
-
-    wait_for_pods - "$INFRA_NS" "$EXPECT" "includes" "Waiting for EFK to start" "$NO_LABEL" "fluentd-* elasticsearch-* kibana-*"
-    if [ "$WITH_TIMINGS" == "yes" ]; then
-        NOW="$(date +%s)"
-        printtime $((NOW - STIME))
-    fi
-fi
-
-if [ "$CONFIG_SADIS" == "external" ]; then
-    STIME="$(date +%s)"
-    echo -e "Verify BBSIM SADIS Service $PLUG"
-    bspin - "Verify required configmap"
-    (set -x; kubectl -n "$BBSIM_NS" delete --ignore-not-found configmap kube-config >>"$LOG" 2>&1) >>"$LOG" 2>&1
-    (set -x; kubectl -n "$BBSIM_NS" create configmap kube-config "--from-file=kube_config=$KUBECONFIG" >>"$LOG" 2>&1) >>"$LOG" 2>&1
-    espin - "$VERIFIED"
-    bspin - "Verify BBSIM SADIS Service Installed"
-    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$BBSIM_NS" "^bbsim-sadis-server\$")" -ne 1 ]; then
-        espin - "$NOT_VERIFIED"
-        INTERNAL_EXTRA_HELM_INSTALL_ARGS="$EXTRA_HELM_FLAGS" helm_install - "$BBSIM_NS" bbsim-sadis-server "$BBSIM_SADIS_SERVER_CHART" "$BBSIM_SADIS_SERVER_CHART_VERSION" "+sadis" "$_HELM_DESC BBSIM SADIS Server"
-        INTERNAL_EXTRA_HELM_INSTALL_ARGS=
-    else
-        espin - "$VERIFIED"
-    fi
-    wait_for_pods - "$BBSIM_NS" 1 "includes" "Waiting for BBSIM SADIS Server to start" "$NO_LABEL" "bbsim-sadis-server-.*"
-
-    if is_in "$WITH_ONOS" "yes,classic,legacy"; then
-        if kubectl get -n "$BBSIM_NS" svc/bbsim-sadis-server-bbsim-sadis-server >/dev/null 2>&1; then
-            BBSIM_SADIS_SVC="bbsim-sadis-server-bbsim-sadis-server"
-        else
-            BBSIM_SADIS_SVC="bbsim-sadis-server"
-        fi
-        push_onos_config "json" \
-            "[optional] Push ONOS configuration for custom SADIS and Bandwidth Profile servers" \
-            "network/configuration/apps/org.opencord.sadis" \
-            "$(cat <<EOJ | tr -d '[:space:]'
-{
-    "sadis": {
-        "integration": {
-            "url": "http://$BBSIM_SADIS_SVC.$BBSIM_NS.svc:58080/subscribers/%s",
-            "cache": {
-                "enabled": true,
-                "maxsize": 50,
-                "ttl": "PT1m"
-            }
-        }
-    },
-    "bandwidthprofile": {
-        "integration": {
-            "url": "http://$BBSIM_SADIS_SVC.$BBSIM_NS.svc:58080/profiles/%s",
-            "cache": {
-                "enabled": true,
-                "maxsize": 50,
-                "ttl": "PT1m"
-            }
-        }
-    }
-}
-EOJ
-)"
-    fi
-    if [ "$WITH_TIMINGS" == "yes" ]; then
-        NOW="$(date +%s)"
-        printtime $((NOW - STIME))
-    fi
-fi
-
-if [ "$WITH_RADIUS" == "yes" ]; then
-    STIME="$(date +%s)"
-    echo -e "Verify RADIUS $LOCK"
-    bspin - "Verify RADIUS Installed"
-    if [ "$HELM_USE_UPGRADE" == "yes" ] || [ "$(helm_is_deployed "$INFRA_NS" "^radius\$")" -ne 1 ]; then
-        espin - "$NOT_VERIFIED"
-        helm_install - "$INFRA_NS" radius "$RADIUS_CHART" "$RADIUS_CHART_VERSION" "+radius" "$_HELM_DESC RADIUS"
-    else
-        espin - "$VERIFIED"
-    fi
-    wait_for_pods - "$INFRA_NS" 1 "includes" "Waiting for RADIUS to start" "$NO_LABEL" "radius-.*"
-    if [ "$WITH_TIMINGS" == "yes" ]; then
-        NOW="$(date +%s)"
-        printtime $((NOW - STIME))
-    fi
-fi
-
 if [ "$WITH_PORT_FORWARDS" == "yes" ]; then
     STIME="$(date +%s)"
     bspin - "Forward VOLTHA API port $FORWARD"
-    kill_port_forward voltha-api voltha-voltha-api
+    kill_port_forward "$VOLTHA_NS" voltha-api
+    kill_port_forward "$VOLTHA_NS" voltha-voltha-api
     VOLTHA_PREFIX=
     if kubectl get -n "$VOLTHA_NS" "svc/voltha-voltha-api" >/dev/null 2>&1; then
         VOLTHA_PREFIX="voltha-"
@@ -2656,75 +2790,30 @@
 
     port_forward "$VOLTHA_NS"  "${VOLTHA_PREFIX}voltha-api" "$VOLTHA_API_PORT:55555"
     espin - "$VERIFIED"
-    if is_in "$WITH_ETCD" "yes,external"; then
-        bspin - "Forward VOLTHA ETCD port $FORWARD"
-        kill_port_forward "etcd"
-        port_forward "$INFRA_NS" "etcd" "$VOLTHA_ETCD_PORT:2379"
-        espin - "$VERIFIED"
-    fi
-    if is_in "$WITH_KAFKA" "yes,external"; then
-        bspin - "Forward VOLTHA Kafka port $FORWARD"
-        kill_port_forward "kafka"
-        port_forward "$INFRA_NS" kafka "$VOLTHA_KAFKA_PORT:9092"
-        espin - "$VERIFIED"
-    fi
-    if [ "$WITH_EFK" == "yes" ]; then
-        bspin - "Forward EFK port $FORWARD"
-        kill_port_forward elasticsearch-master
-        kill_port_forward kibana-kibana
-        port_forward "$INFRA_NS" elasticsearch-master "$ELASTICSEARCH_PORT:9200"
-        port_forward "$INFRA_NS" kibana-kibana "$KIBANA_PORT:5601"
-        espin - "$VERIFIED"
-    fi
+
     if [ "$WITH_PPROF" == "yes" ]; then
         VOLTHA_OPENOLT_PREFIX=
         if kubectl get -n "$ADAPTER_NS" "svc/open-olt-adapter-open-olt-profiler" >/dev/null 2>&1; then
             VOLTHA_OPENOLT_PREFIX="open-olt-"
         fi
         bspin - "Forward PProf ports port $FORWARD"
-        kill_port_forward voltha-rw-core-profiler voltha-voltha-rw-core-profiler
-        kill_port_forward adapter-open-olt-profiler open-olt-adapter-open-olt-profiler
-        kill_port_forward voltha-of-agent-profiler voltha-voltha-of-agent-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-rw-core-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-voltha-rw-core-profiler
+        kill_port_forward "$VOLTHA_NS" adapter-open-olt-profiler
+        kill_port_forward "$VOLTHA_NS" open-olt-adapter-open-olt-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-of-agent-profiler
+        kill_port_forward "$VOLTHA_NS" voltha-voltha-of-agent-profiler
         port_forward "$VOLTHA_NS" "${VOLTHA_PREFIX}voltha-rw-core-profiler" "$VOLTHA_PPROF_PORT:6060"
         port_forward "$ADAPTER_NS" "${VOLTHA_OPENOLT_PREFIX}adapter-open-olt-profiler" "$OPENOLT_PPROF_PORT:6060"
         port_forward "$VOLTHA_NS" "${VOLTHA_PREFIX}voltha-of-agent-profiler" "$OFAGENT_PPROF_PORT:6060"
         espin - "$VERIFIED"
     fi
-    if [ "$WITH_TRACING" == "yes" ]; then
-        bspin - "Forward VOLTHA Tracing GUI port $FORWARD"
-        VOLTHA_TRACING_CHART_NAME=$(resolve_chart_name "$VOLTHA_TRACING_CHART")
-        kill_port_forward "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui"
-        port_forward "$INFRA_NS" "tracing-${VOLTHA_TRACING_CHART_NAME}-jaeger-gui" "$TRACING_GUI_PORT:16686"
-        espin - "$VERIFIED"
-    fi
     if [ "$WITH_TIMINGS" == "yes" ]; then
         NOW="$(date +%s)"
         printtime $((NOW - STIME))
     fi
 fi
 
-if is_in "$WITH_ONOS" "yes,legacy,classic" && [ "$WITH_RADIUS" != "no" ]; then
-    SVC_NAME=radius
-    if kubectl get -n "$INFRA_NS" "svc/radius-freeradius" >/dev/null 2>&1; then
-        SVC_NAME="radius-freeradius"
-    fi
-    _HOST="$SVC_NAME.$INFRA_NS.svc"
-    _PORT=1812
-    if [ "$WITH_RADIUS" != "yes" ]; then
-        _HOST="$(echo "$WITH_RADIUS" | cut -d: -f1)"
-        _PORT="$(echo "$WITH_RADIUS" | cut -s -d: -f2)"
-        _PORT=${_PORT:-1812}
-    fi
-    bspin "Configure ONOS RADIUS Connection $GEAR"
-    (set -x; sed -e "s/:RADIUS_SVC:/$_HOST/g" -e "s/:RADIUS_PORT:/$_PORT/" onos-files/onos-aaa.json | curl --fail -sSL --user karaf:karaf -X POST "http://$_ONOS_API_EP/onos/v1/network/configuration/apps/org.opencord.aaa" -H Content-type:application/json -d@- >>"$LOG" 2>&1) >>"$LOG" 2>&1
-    espin "$VERIFIED"
-fi
-
-if [ "$WITH_EFK" == "yes" ]; then
-    do_curl "" "POST" "" "" "http://localhost:$KIBANA_PORT/api/saved_objects/index-pattern/logst*" "json" '{"attributes":{"title":"logst*","timeFieldName":"@timestamp"}}' "Verify logging index in EFK" "409,200" "-H Content-type:application/json -H kbn-xsrf:true" "$GEAR"
-#    fi
-fi
-
 if [ "$WITH_CHAOS" == "yes" ]; then
     STIME="$(date +%s)"
     echo -e "Verify kube-monkey $LOCK"