summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBlaisonneau David <david.blaisonneau@orange.com>2017-03-23 15:30:00 +0100
committerNarinder Gupta <narinder.gupta@canonical.com>2017-03-23 14:39:32 +0000
commit9bb7ce721735f70e3373f6b79838c224f09dbb2d (patch)
tree50029407a5a7b96eeeede7392668f0915120b8f3
parent90f9d41ee4ce3e056e658a2af46d34b87a907eeb (diff)
Add interface renaming on maas for heterogeneous hardware config
Change-Id: I7b26821802f1843d738a116082b70bd27b35b35b Signed-off-by: Blaisonneau David <david.blaisonneau@orange.com> (cherry picked from commit 4afffb76ced3bafae18e92a80137c25f969898f2)
-rwxr-xr-xci/03-maasdeploy.sh26
-rw-r--r--labconfig/orange/pod2/labconfig.yaml16
2 files changed, 34 insertions, 8 deletions
diff --git a/ci/03-maasdeploy.sh b/ci/03-maasdeploy.sh
index 329931e2..4307088f 100755
--- a/ci/03-maasdeploy.sh
+++ b/ci/03-maasdeploy.sh
@@ -577,6 +577,9 @@ if [ -e ./labconfig.json ]; then
# We have no vlan specified on spaces, but we have a vlan subinterface
IF_VLAN = ${IF_NAME##*.}; fi
+ # in case of interface renaming
+ IF_NEWNAME=$(cat labconfig.json | jq --raw-output ".lab.racks[0].nodes[$NODE_ID].nics[] | select(.ifname==\"$IF_NAME\") ".rename)
+
# In case of a VLAN interface
if ([ $IF_VLAN ] && [ "$IF_VLAN" != "null" ]); then
echo " >>> Configuring VLAN $IF_VLAN"
@@ -586,24 +589,37 @@ if [ -e ./labconfig.json ]; then
if [[ -z $INTERFACE ]]; then
# parent interface is not set because it does not have a SUBNET_CIDR
PARENT_VLANID=$(maas $PROFILE fabrics read | jq ".[].vlans[] | select(.fabric_id==$FABRICID and .name==\"untagged\")".id)
+ # If we need to rename the interface, use new interface name
+ if ([ $IF_NEWNAME ] && [ "$IF_NEWNAME" != "null" ]); then
+ PARENT_IF_NAME=${IF_NEWNAME%%.*}
+ IF_NAME=$IF_NEWNAME
+ else
+ PARENT_IF_NAME=${IF_NAME%%.*}
+ fi
# We set the physical interface to the targeted fabric
- PARENT_IF_NAME=${IF_NAME%%.*}
maas $PROFILE interface update $NODE_SYS_ID $PARENT_IF_NAME vlan=$PARENT_VLANID
- sleep 3
+ sleep 2
INTERFACE=$(maas $PROFILE interfaces read $NODE_SYS_ID | jq ".[] | select(.vlan.fabric_id==$FABRICID)".id)
fi
maas $PROFILE interfaces create-vlan $NODE_SYS_ID vlan=$VLANID parent=$INTERFACE || true
+ elif ([ $IF_NEWNAME ] && [ "$IF_NEWNAME" != "null" ]); then
+ # rename interface if needed
+ maas $PROFILE interface update $NODE_SYS_ID $IF_NAME name=$IF_NEWNAME
+ IF_NAME=$IF_NEWNAME
fi
-
# Configure the interface
if ([ $SUBNET_CIDR ] && [ "$SUBNET_CIDR" != "null" ]); then
VLANID=$(maas $PROFILE subnet read $SUBNET_CIDR | jq -r '.vlan.id')
- maas $PROFILE interface update $NODE_SYS_ID $IF_NAME vlan=$VLANID
+ if !([ $IF_VLAN ] && [ "$IF_VLAN" != "null" ]); then
+ # If this interface is not a VLAN (done withe create-vlan)
+ maas $PROFILE interface update $NODE_SYS_ID $IF_NAME vlan=$VLANID
+ fi
maas $PROFILE interface link-subnet $NODE_SYS_ID $IF_NAME mode=$IF_MODE subnet=$SUBNET_CIDR || true
- sleep 5
+ sleep 2
else
echo " >>> Not configuring, we have an empty Subnet CIDR"
fi
+
done
done
fi
diff --git a/labconfig/orange/pod2/labconfig.yaml b/labconfig/orange/pod2/labconfig.yaml
index 402df37a..7e19abca 100644
--- a/labconfig/orange/pod2/labconfig.yaml
+++ b/labconfig/orange/pod2/labconfig.yaml
@@ -11,9 +11,11 @@ lab:
spaces: [admin]
mac: ["1c:98:ec:11:ad:08"]
- ifname: eno2.2056
+ rename: eno99.2056
spaces: [public]
mac: ["1c:98:ec:11:ad:09"]
- ifname: eno2
+ rename: eno99
spaces: [floating]
mac: ["1c:98:ec:11:ad:09"]
- ifname: eno3
@@ -32,9 +34,11 @@ lab:
spaces: [admin]
mac: ["1c:98:ec:11:c2:c4"]
- ifname: eno2.2056
+ rename: eno99.2056
spaces: [public]
mac: ["1c:98:ec:11:c2:c5"]
- ifname: eno2
+ rename: eno99
spaces: [floating]
mac: ["1c:98:ec:11:c2:c5"]
- ifname: eno3
@@ -53,9 +57,11 @@ lab:
spaces: [admin]
mac: ["1c:98:ec:11:9d:c4"]
- ifname: eno2.2056
+ rename: eno99.2056
spaces: [public]
mac: ["1c:98:ec:11:9c:c5"]
- ifname: eno2
+ rename: eno99
spaces: [floating]
mac: ["1c:98:ec:11:9c:c5"]
- ifname: eno3
@@ -74,9 +80,11 @@ lab:
spaces: [admin]
mac: ["1c:98:ec:1c:5d:88"]
- ifname: ens3f0.2056
+ rename: eno99.2056
spaces: [public]
mac: ["a0:36:9f:1f:67:1c"]
- ifname: ens3f0
+ rename: eno99
spaces: [floating]
mac: ["a0:36:9f:1f:67:1c"]
- ifname: ens3f1
@@ -95,9 +103,11 @@ lab:
spaces: [admin]
mac: ["1c:98:ec:1d:84:7c"]
- ifname: ens3f0.2056
+ rename: eno99.2056
spaces: [public]
mac: ["a0:36:9f:1f:66:a4"]
- ifname: ens3f0
+ rename: eno99
spaces: [floating]
mac: ["a0:36:9f:1f:66:a4"]
- ifname: ens3f1
@@ -109,7 +119,7 @@ lab:
user: Administrator
pass: opnfv2017
floating-ip-range: 161.105.231.4,161.105.231.62,161.105.231.1,161.105.231.0/26
- ext-port: "ens3f0"
+ ext-port: "eno99"
dns: 10.2.0.1
osdomainname:
opnfv:
@@ -141,6 +151,6 @@ opnfv:
vlan: 2056
- type: floating
bridge: brFloating
- cidr:
+ cidr:
gateway:
- vlan:
+ vlan: