Remove usage of deprecated ifconfig, bridge-utils
[icn.git] / env / metal3 / 02_configure.sh
index e05abc1..c893f78 100755 (executable)
@@ -1,5 +1,6 @@
 #!/usr/bin/env bash
-set -xe
+set -eux -o pipefail
+
 LIBDIR="$(dirname "$PWD")"
 
 source $LIBDIR/lib/logging.sh
@@ -14,7 +15,8 @@ function check_interface_ip {
     local interface=$1
     local ipaddr=$2
 
-    if [ ! $(ip addr show dev $interface) ]; then
+    ip addr show dev $interface
+    if [ $? -ne 0 ]; then
         exit 1
     fi
 
@@ -24,17 +26,10 @@ function check_interface_ip {
     fi
 }
 
-function configure_dhcp_bridge {
-    brctl addbr dhcp0
-    ip link set dhcp0 up
-    brctl addif dhcp0 $BS_DHCP_INTERFACE
-    ip addr add dev dhcp0 $BS_DHCP_INTERFACE_IP
-}
-
 function configure_ironic_bridge {
-    brctl addbr provisioning
+    ip link add dev provisioning type bridge
     ip link set provisioning up
-    brctl addif provisioning $IRONIC_INTERFACE
+    ip link set dev $IRONIC_INTERFACE master provisioning
     ip addr add dev provisioning 172.22.0.1/24
 }
 
@@ -158,14 +153,14 @@ function configure {
     #configure_kubeadm $1
     #configure_kubelet
     configure_ironic $1
-    configure_dhcp_bridge
     configure_ironic_bridge
     configure_ironic_interfaces
 }
 
-if [ "$1" == "-o" ]; then
+if [ "$#" -eq 0 ]; then
+    configure online
+elif [ "$1" == "-o" ]; then
     configure offline
-    exit 0
+else
+    exit 1
 fi
-
-configure