Adding Network MTU parameter to VLANs

Change-Id: Id0aefc4a8ee8e07ec74ef4a519d646e9fc0120ec
diff --git a/README.rst b/README.rst
index 4cc62bd..ea7c7d6 100644
--- a/README.rst
+++ b/README.rst
@@ -59,6 +59,7 @@
             0:
               name: 'vlan 0'
               description: Deploy VLAN
+              mtu: 1500
               dhcp: true
               # FIXME: after refactoring domain module, it should be
               # fixed exactly for FQDN, not only 'hostname'
diff --git a/_modules/maasng.py b/_modules/maasng.py
index f14b18e..a96a4e4 100644
--- a/_modules/maasng.py
+++ b/_modules/maasng.py
@@ -1082,7 +1082,7 @@
     return ret
 
 
-def create_vlan_in_fabric(name, fabric, vlan, description, primary_rack,
+def create_vlan_in_fabric(name, fabric, vlan, description, primary_rack, mtu=1500,
                           dhcp_on=False, update=False, vlan_id=""):
     """
     Update vlan
@@ -1095,6 +1095,7 @@
     data = {
         "name": name,
         "dhcp_on": str(dhcp_on),
+        "mtu": mtu,
         "description": description,
         "primary_rack": list_racks()[primary_rack]['system_id'],
     }
diff --git a/_states/maasng.py b/_states/maasng.py
index 40ec9a4..85df2f4 100644
--- a/_states/maasng.py
+++ b/_states/maasng.py
@@ -332,12 +332,13 @@
     return ret
 
 
-def vlan_present_in_fabric(name, fabric, vlan, primary_rack, description='', dhcp_on=False):
+def vlan_present_in_fabric(name, fabric, vlan, primary_rack, description='', dhcp_on=False, mtu=1500):
     """
 
     :param name: Name of vlan
     :param fabric: Name of fabric
     :param vlan: Vlan id
+    :param mtu: MTU
     :param description: Description of vlan
     :param dhcp_on: State of dhcp
     :param primary_rack: primary_rack
@@ -360,6 +361,7 @@
         changes = __salt__['maasng.create_vlan_in_fabric'](name=name,
                                                            fabric=fabric,
                                                            vlan=vlan,
+                                                           mtu=mtu,
                                                            description=description,
                                                            primary_rack=primary_rack,
                                                            dhcp_on=dhcp_on)
@@ -370,6 +372,7 @@
         changes = __salt__['maasng.create_vlan_in_fabric'](name=name,
                                                            fabric=fabric,
                                                            vlan=vlan,
+                                                           mtu=mtu,
                                                            description=description,
                                                            primary_rack=primary_rack,
                                                            dhcp_on=dhcp_on,
diff --git a/maas/region.sls b/maas/region.sls
index c2a4c6b..04e2a1b 100644
--- a/maas/region.sls
+++ b/maas/region.sls
@@ -314,6 +314,7 @@
 maas_vlan{{ vlan_n }}_present_for_{{ fabric_name }}:
   maasng.vlan_present_in_fabric:
   - vlan: {{ vlan_n }}
+  - mtu: {{ data.get('mtu','') }}
   - fabric: {{ fabric_name }}
   - name: {{ data.get('name','') }}
   - description: {{ data.description }}
@@ -361,6 +362,7 @@
 maas_vlan{{ vlan_n }}_present_for_{{ fabric_name }}_dhcp:
   maasng.vlan_present_in_fabric:
   - vlan: {{ vlan_n }}
+  - mtu: {{ data.get('mtu','') }}
   - fabric: {{ fabric_name }}
   - name: {{ data.get('name','') }}
   - description: {{ data.description }}