Use username and password from "os" in nodes.json
[icn.git] / deploy / metal3-vm / 03_launch_mgmt_cluster.sh
index ef9f7d6..93789e1 100755 (executable)
@@ -1,5 +1,5 @@
-#!/bin/bash
-set -xe
+#!/usr/bin/env bash
+set -eux -o pipefail
 
 # shellcheck disable=SC1091
 source lib/logging.sh
@@ -8,6 +8,8 @@ source lib/common.sh
 
 eval "$(go env)"
 export GOPATH
+DEPLOYDIR="$(dirname "$PWD")"
+BMODIR=$DEPLOYDIR/metal3/scripts/bmo
 
 # Environment variables
 # M3PATH : Path to clone the metal3 dev env repo
@@ -50,30 +52,12 @@ function clone_repos {
 
 function launch_baremetal_operator {
     docker pull integratedcloudnative/baremetal-operator:v1.0-icn
-    docker tag integratedcloudnative/baremetal-operator:v1.0-icn \
-        quay.io/metal3-io/baremetal-operator:master
-
-    pushd "${BMOPATH}"
-    if [ "${BMO_RUN_LOCAL}" = true ]; then
-        touch bmo.out.log
-        touch bmo.err.log
-        kubectl apply -f deploy/namespace/namespace.yaml
-        kubectl apply -f deploy/rbac/service_account.yaml -n metal3
-        kubectl apply -f deploy/rbac/role.yaml -n metal3
-        kubectl apply -f deploy/rbac/role_binding.yaml
-        kubectl apply -f deploy/crds/metal3.io_baremetalhosts_crd.yaml
-        kubectl apply -f deploy/operator/no_ironic/operator.yaml -n metal3
-        kubectl scale deployment metal3-baremetal-operator -n metal3 --replicas=0
-        nohup make run >> bmo.out.log 2>>bmo.err.log &
-    else
-        kubectl apply -f deploy/namespace/namespace.yaml
-        kubectl apply -f deploy/rbac/service_account.yaml -n metal3
-        kubectl apply -f deploy/rbac/role.yaml -n metal3
-        kubectl apply -f deploy/rbac/role_binding.yaml
-        kubectl apply -f deploy/crds/metal3.io_baremetalhosts_crd.yaml
-        kubectl apply -f deploy/operator/no_ironic/operator.yaml -n metal3
-    fi
-    popd
+    kubectl apply -f $BMODIR/namespace/namespace.yaml
+    kubectl apply -f $BMODIR/rbac/service_account.yaml -n metal3
+    kubectl apply -f $BMODIR/rbac/role.yaml -n metal3
+    kubectl apply -f $BMODIR/rbac/role_binding.yaml
+    kubectl apply -f $BMODIR/crds/metal3.io_baremetalhosts_crd.yaml
+    kubectl apply -f $BMODIR/operator/no_ironic/operator.yaml -n metal3
 }
 
 network_config_files() {
@@ -94,6 +78,8 @@ runcmd:
 EOF
 }
 
+# documentation for the values below may be found at
+# https://cloudinit.readthedocs.io/en/latest/topics/modules.html
 create_userdata() {
     name="$1"
     COMPUTE_NODE_FQDN="$name.akraino.icn.org"
@@ -136,7 +122,7 @@ EOF
 }
 
 function make_bm_hosts {
-    while read -r name address user password mac; do
+    while IFS=',' read -r name address user password mac; do
         create_userdata $name
         apply_userdata_credential $name
         go run "${BMOPATH}"/cmd/make-bm-worker/main.go \
@@ -159,7 +145,6 @@ function apply_bm_hosts {
     list_nodes | make_bm_hosts
 }
 
-
 clone_repos
 launch_baremetal_operator
 apply_bm_hosts