Fixes for OpenContrail running on Pike in Fraser release:
[joid.git] / ci / 03-maasdeploy.sh
index a6b311d..d10e9a3 100755 (executable)
@@ -209,16 +209,13 @@ sudo virsh pool-define-as default --type dir --target /var/lib/libvirt/images/ |
 sudo virsh pool-start default || true
 sudo virsh pool-autostart default || true
 
-# In case of virtual install set network
-if [ "$virtinstall" -eq 1 ]; then
-    sudo virsh net-dumpxml default > default-net-org.xml
-    sed -i '/dhcp/d' default-net-org.xml
-    sed -i '/range/d' default-net-org.xml
-    sudo virsh net-destroy default
-    sudo virsh net-define default-net-org.xml
-    sudo virsh net-start default
-    rm -f default-net-org.xml
-fi
+# As we use kvm so setup network on admin network
+ADMIN_BR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="admin")'.bridge | cut -d \" -f 2 `
+sed -i "s@brAdm@$ADMIN_BR@" net.xml
+sudo virsh net-destroy default || true
+sudo virsh net-undefine default || true
+sudo virsh net-define net.xml || true
+sudo virsh net-start default || true
 
 #
 # Cleanup, juju init and config backup
@@ -465,9 +462,7 @@ addnodes(){
         VIRSHIP=""  # TODO: parse from $VIRSHURL if needed
     fi
 
-    if [ "$virtinstall" -eq 1 ]; then
-        netw=" --network bridge=virbr0,model=virtio"
-    elif ([ "$VIRSHHOST" != "" ]); then
+    if ([ "$VIRSHHOST" != "" ]); then
         # Get the bridge hosting the remote virsh
         brid=$(ssh $VIRSHHOST "ip a l | grep $VIRSHHOST | perl -pe 's/.* (.*)\$/\$1/g'")
         netw=" --network bridge=$brid,model=virtio"
@@ -584,7 +579,20 @@ addnodes(){
         done
     fi
 
-    maas $PROFILE pods create type=virsh power_address="$VIRSHURL" power_user=$USER
+     # Iterate to avoid "Conflict error" issue
+     for ii in 1 2 3 4 5 6 7 8 9 10
+     do
+       echo "Try $ii"
+       maas $PROFILE pods create type=virsh power_address="$VIRSHURL" power_user=$USER > /tmp/deploy.out 2>&1 || true
+       cat /tmp/deploy.out
+       if ! fgrep -q 'Conflict' /tmp/deploy.out
+       then
+         break
+       else
+         continue
+       fi
+     done
+
 
     # Make sure nodes are added into MAAS and none of them is in commissioning state
     i=0