summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNarinder Gupta <narinder.gupta@canonical.com>2017-02-22 08:03:26 -0600
committerNarinder Gupta <narinder.gupta@canonical.com>2017-02-22 08:53:41 -0600
commit6da65f9cfbda23f5f8e4b5965062afcf76409b2a (patch)
treedcaac90a6a0a5257a2b539369ab906d1accac458
parent8211e9925de64f308b19e97a27eddb16389ebbbc (diff)
configure VLAN on interface in MAAS.
Change-Id: Id62ba268cf02b594a8d2fa6992d7917de2b960e9 Signed-off-by: Narinder Gupta <narinder.gupta@canonical.com>
-rwxr-xr-xci/03-maasdeploy.sh97
-rwxr-xr-xci/odl/fetch-charms.sh2
-rw-r--r--labconfig/intel/pod5/labconfig.yaml30
3 files changed, 118 insertions, 11 deletions
diff --git a/ci/03-maasdeploy.sh b/ci/03-maasdeploy.sh
index 8b7de401..d2aaa36b 100755
--- a/ci/03-maasdeploy.sh
+++ b/ci/03-maasdeploy.sh
@@ -91,6 +91,7 @@ SUBNET_CIDR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="admin")'.
SUBNETDATA_CIDR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="data")'.cidr | cut -d \" -f 2 `
SUBNETPUB_CIDR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="public")'.cidr | cut -d \" -f 2 `
SUBNETSTOR_CIDR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="storage")'.cidr | cut -d \" -f 2 `
+SUBNETFLOAT_CIDR=`cat labconfig.json | jq '.opnfv.spaces[] | select(.type=="floating")'.cidr | cut -d \" -f 2 `
VLAN_TAG="untagged"
# In the case of a virtual deployment get deployconfig.yaml
@@ -219,10 +220,10 @@ configuremaas(){
maas $PROFILE spaces create name=$space || true
done
- maas $PROFILE boot-source update $SOURCE_ID \
- url=$URL keyring_filename=$KEYRING_FILE || true
- maas $PROFILE boot-resources import || true
- sleep 60
+ #maas $PROFILE boot-source update $SOURCE_ID \
+ # url=$URL keyring_filename=$KEYRING_FILE || true
+ #maas $PROFILE boot-resources import || true
+ #sleep 60
while [ "$(maas $PROFILE boot-resources is-importing)" == "true" ];
do
@@ -500,8 +501,10 @@ crnodevlanint() {
for node in $(maas $PROFILE nodes read | jq -r '.[].system_id')
do
- interface=$(maas $PROFILE interface read $node $2 | jq -r '.id')
- maas $PROFILE interfaces create-vlan $node vlan=$1 parent=$interface
+ vlanid=$(maas $PROFILE subnets read | jq '.[].vlan | select(.vid=='$1')'.id)
+ fabricid=`maas $PROFILE subnets read | jq '.[].vlan | select(.vid=='$1')'.fabric_id`
+ interface=`maas $PROFILE interfaces read $node | jq '.[] | select(.vlan.fabric_id=='$fabricid')'.id`
+ maas $PROFILE interfaces create-vlan $node vlan=$vlanid parent=$interface || true
done
}
@@ -557,32 +560,106 @@ esac
#
#read interface needed in Auto mode and enable it. Will be rmeoved once auto enablement will be implemented in the maas-deployer.
+# Enable only non vlan interfaces first.
+if [ -e ./labconfig.json ]; then
+ if [ $SUBNETDATA_CIDR ]; then
+ EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="data")'.ifname | sort -u`
+ i="0"
+ while [ ! -z "${EXTNET[i]}" ];
+ do
+ if ([ -z $VLAN ] || [ "$VLAN" == "null" ]); then
+ enableautomode ${EXTNET[i]} AUTO $SUBNETDATA_CIDR || true
+ fi
+ i=$[$i+1]
+ done
+ fi
+ if [ $SUBNETPUB_CIDR ]; then
+ EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="public")'.ifname | sort -u`
+ i="0"
+ while [ ! -z "${EXTNET[i]}" ];
+ do
+ if ([ -z $VLAN ] || [ "$VLAN" == "null" ]); then
+ enableautomode ${EXTNET[i]} AUTO $SUBNETPUB_CIDR || true
+ fi
+ i=$[$i+1]
+ done
+ fi
+ if [ $SUBNETSTOR_CIDR ]; then
+ EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="storage")'.ifname | sort -u`
+ i="0"
+ while [ ! -z "${EXTNET[i]}" ];
+ do
+ if ([ -z $VLAN ] || [ "$VLAN" == "null" ]); then
+ enableautomode ${EXTNET[i]} AUTO $SUBNETSTOR_CIDR || true
+ fi
+ i=$[$i+1]
+ done
+ fi
+ if [ $SUBNETFLOAT_CIDR ]; then
+ EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="floating")'.ifname | sort -u`
+ i="0"
+ while [ ! -z "${EXTNET[i]}" ];
+ do
+ if ([ -z $VLAN ] || [ "$VLAN" == "null" ]); then
+ enableautomode ${EXTNET[i]} link_up $SUBNETFLOAT_CIDR || true
+ fi
+ i=$[$i+1]
+ done
+ fi
+fi
-if [ -e ./deployconfig.yaml ]; then
+#enable only the vlan interfaces which were ignore in previous run.
+
+if [ -e ./labconfig.json ]; then
if [ $SUBNETDATA_CIDR ]; then
EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="data")'.ifname | sort -u`
+ VLAN=`cat labconfig.json | jq --raw-output '.opnfv.spaces[] | select(.type=="data")'.vlan`
i="0"
while [ ! -z "${EXTNET[i]}" ];
do
- enableautomode ${EXTNET[i]} AUTO $SUBNETDATA_CIDR || true
+ if ([ $VLAN ] && [ "$VLAN" != "null" ]); then
+ crnodevlanint $VLAN || true
+ enableautomode ${EXTNET[i]} AUTO $SUBNETDATA_CIDR || true
+ fi
i=$[$i+1]
done
fi
if [ $SUBNETPUB_CIDR ]; then
EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="public")'.ifname | sort -u`
+ VLAN=`cat labconfig.json | jq --raw-output '.opnfv.spaces[] | select(.type=="public")'.vlan`
i="0"
while [ ! -z "${EXTNET[i]}" ];
do
- enableautomode ${EXTNET[i]} AUTO $SUBNETPUB_CIDR || true
+ if ([ $VLAN ] && [ "$VLAN" != "null" ]); then
+ crnodevlanint $VLAN || true
+ enableautomode ${EXTNET[i]} AUTO $SUBNETPUB_CIDR || true
+ fi
i=$[$i+1]
done
fi
if [ $SUBNETSTOR_CIDR ]; then
EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="storage")'.ifname | sort -u`
+ VLAN=`cat labconfig.json | jq --raw-output '.opnfv.spaces[] | select(.type=="storage")'.vlan`
+ i="0"
+ while [ ! -z "${EXTNET[i]}" ];
+ do
+ if ([ $VLAN ] && [ "$VLAN" != "null" ]); then
+ crnodevlanint $VLAN || true
+ enableautomode ${EXTNET[i]} AUTO $SUBNETSTOR_CIDR || true
+ fi
+ i=$[$i+1]
+ done
+ fi
+ if [ $SUBNETFLOAT_CIDR ]; then
+ EXTNET=`cat labconfig.json | jq --raw-output '.lab.racks[0].nodes[].nics[] | select(.spaces[]=="floating")'.ifname | sort -u`
+ VLAN=`cat labconfig.json | jq --raw-output '.opnfv.spaces[] | select(.type=="floating")'.vlan`
i="0"
while [ ! -z "${EXTNET[i]}" ];
do
- enableautomode ${EXTNET[i]} AUTO $SUBNETSTOR_CIDR || true
+ if ([ $VLAN ] && [ "$VLAN" != "null" ]); then
+ crnodevlanint $VLAN || true
+ enableautomode ${EXTNET[i]} link_up $SUBNETFLOAT_CIDR || true
+ fi
i=$[$i+1]
done
fi
diff --git a/ci/odl/fetch-charms.sh b/ci/odl/fetch-charms.sh
index 84209f42..ff4886ea 100755
--- a/ci/odl/fetch-charms.sh
+++ b/ci/odl/fetch-charms.sh
@@ -13,7 +13,7 @@ function build {
bzr branch lp:~narindergupta/charms/trusty/promise/trunk $distro/promise
bzr branch lp:~billy-olsen/charms/xenial/mongodb/trunk $distro/mongodb
bzr branch lp:~narindergupta/opnfv/ntp $distro/ntp
-charm pull cs:~narindergupta/charm-neutron-gateway-0 $distro/neutron-gateway
+charm pull cs:~narindergupta/neutron-gateway-0 $distro/neutron-gateway
git clone https://github.com/gnuoy/charm-congress.git $distro/charm-congress
build congress
diff --git a/labconfig/intel/pod5/labconfig.yaml b/labconfig/intel/pod5/labconfig.yaml
index 4fbe1b6f..8ed4532b 100644
--- a/labconfig/intel/pod5/labconfig.yaml
+++ b/labconfig/intel/pod5/labconfig.yaml
@@ -16,6 +16,12 @@ lab:
- ifname: ens785f1.504
spaces: [public]
mac: ["90:E2:BA:85:4E:2D"]
+ - ifname: ens785f0.505
+ spaces: [floating]
+ mac: ["90:E2:BA:85:4E:2C"]
+ - ifname: ens785f1
+ spaces: [storage]
+ mac: ["90:E2:BA:85:4E:2D"]
power:
type: ipmi
address: 10.2.117.85
@@ -34,6 +40,12 @@ lab:
- ifname: ens785f1.504
spaces: [public]
mac: ["90:E2:BA:84:08:B9"]
+ - ifname: ens785f0.505
+ spaces: [floating]
+ mac: ["90:E2:BA:85:4E:2C"]
+ - ifname: ens785f1
+ spaces: [storage]
+ mac: ["90:E2:BA:85:4E:2D"]
power:
type: ipmi
address: 10.2.117.86
@@ -52,6 +64,12 @@ lab:
- ifname: ens785f1.504
spaces: [public]
mac: ["90:E2:BA:84:07:0E"]
+ - ifname: ens785f0.505
+ spaces: [floating]
+ mac: ["90:E2:BA:85:4E:2C"]
+ - ifname: ens785f1
+ spaces: [storage]
+ mac: ["90:E2:BA:85:4E:2D"]
power:
type: ipmi
address: 10.2.117.87
@@ -70,6 +88,12 @@ lab:
- ifname: ens785f1.504
spaces: [public]
mac: ["90:E2:BA:83:FD:81"]
+ - ifname: ens785f0.505
+ spaces: [floating]
+ mac: ["90:E2:BA:85:4E:2C"]
+ - ifname: ens785f1
+ spaces: [storage]
+ mac: ["90:E2:BA:85:4E:2D"]
power:
type: ipmi
address: 10.2.117.88
@@ -88,6 +112,12 @@ lab:
- ifname: ens785f1.504
spaces: [public]
mac: ["90:E2:BA:75:22:75"]
+ - ifname: ens785f0.505
+ spaces: [floating]
+ mac: ["90:E2:BA:85:4E:2C"]
+ - ifname: ens785f1
+ spaces: [storage]
+ mac: ["90:E2:BA:85:4E:2D"]
power:
type: ipmi
address: 10.2.117.89