Check for errors by default in scripts
[icn.git] / deploy / metal3 / scripts / 01_metal3.sh
index b922a90..dbfa2d3 100755 (executable)
@@ -1,5 +1,5 @@
-#!/bin/bash
-set +ex
+#!/usr/bin/env bash
+set -eu -o pipefail
 
 LIBDIR="$(dirname "$(dirname "$(dirname "$PWD")")")"
 
@@ -15,7 +15,7 @@ fi
 IMAGE_URL=http://172.22.0.1/images/${BM_IMAGE}
 IMAGE_CHECKSUM=http://172.22.0.1/images/${BM_IMAGE}.md5sum
 
-function get_default_inteface_ipaddress {
+function get_default_interface_ipaddress {
     local _ip=$1
     local _default_interface=$(awk '$2 == 00000000 { print $1 }' /proc/net/route)
     local _ipv4address=$(ip addr show dev $_default_interface | awk '$1 == "inet" { sub("/.*", "", $2); print $2 }')
@@ -48,7 +48,7 @@ function deprovision_compute_node {
 }
 
 function set_compute_ssh_config {
-    get_default_inteface_ipaddress default_addr
+    get_default_interface_ipaddress default_addr
     cat << EOF
 - path: /root/.ssh/config
     owner: root:root
@@ -93,44 +93,22 @@ function create_userdata {
 }
 
 function launch_baremetal_operator {
-    if [ -d $GOPATH/src/github.com/metal3-io/baremetal-operator ]; then
-        rm -rf $GOPATH/src/github.com/metal3-io/baremetal-operator
-    fi
-
     docker pull integratedcloudnative/baremetal-operator:v1.0-icn
-    docker tag integratedcloudnative/baremetal-operator:v1.0-icn \
-        quay.io/metal3-io/baremetal-operator:master
-
-    mkdir -p $GOPATH/src/github.com/metal3-io
-    pushd $GOPATH/src/github.com/metal3-io
-    git clone --single-branch --branch v1.0-icn \
-        https://github.com/akraino-icn/baremetal-operator.git
-    kubectl apply -f baremetal-operator/deploy/namespace/namespace.yaml
-    kubectl apply -f baremetal-operator/deploy/rbac/service_account.yaml -n metal3
-    kubectl apply -f baremetal-operator/deploy/rbac/role.yaml -n metal3
-    kubectl apply -f baremetal-operator/deploy/rbac/role_binding.yaml
-    kubectl apply -f baremetal-operator/deploy/crds/metal3.io_baremetalhosts_crd.yaml
-    kubectl apply -f baremetal-operator/deploy/operator/no_ironic/operator.yaml -n metal3
-    popd
+    kubectl apply -f bmo/namespace/namespace.yaml
+    kubectl apply -f bmo/rbac/service_account.yaml -n metal3
+    kubectl apply -f bmo/rbac/role.yaml -n metal3
+    kubectl apply -f bmo/rbac/role_binding.yaml
+    kubectl apply -f bmo/crds/metal3.io_baremetalhosts_crd.yaml
+    kubectl apply -f bmo/operator/no_ironic/operator.yaml -n metal3
 }
 
 function remove_baremetal_operator {
-    if [ ! -d $GOPATH/src/github.com/metal3-io/baremetal-operator ]; then
-        pushd $GOPATH/src/github.com/metal3-io
-        git clone --single-branch --branch v1.0-icn \
-               https://github.com/akraino-icn/baremetal-operator.git
-        popd
-    fi
-
-    pushd $GOPATH/src/github.com/metal3-io
-    kubectl delete -f baremetal-operator/deploy/operator/no_ironic/operator.yaml -n metal3
-    kubectl delete -f baremetal-operator/deploy/crds/metal3.io_baremetalhosts_crd.yaml
-    kubectl delete -f baremetal-operator/deploy/rbac/role_binding.yaml
-    kubectl delete -f baremetal-operator/deploy/rbac/role.yaml -n metal3
-    kubectl delete -f baremetal-operator/deploy/rbac/service_account.yaml -n metal3
-    kubectl delete -f baremetal-operator/deploy/namespace/namespace.yaml
-    popd
-    rm -rf $GOPATH/src/github.com/metal3-io/baremetal-operator
+    kubectl delete -f bmo/operator/no_ironic/operator.yaml -n metal3
+    kubectl delete -f bmo/crds/metal3.io_baremetalhosts_crd.yaml
+    kubectl delete -f bmo/rbac/role_binding.yaml
+    kubectl delete -f bmo/rbac/role.yaml -n metal3
+    kubectl delete -f bmo/rbac/service_account.yaml -n metal3
+    kubectl delete -f bmo/namespace/namespace.yaml
 }
 
 function network_config_files {