Configure dhcp relay in Maas fabrics
PROD-31910
Change-Id: I80d5a15fc38be0793c680da8c6bfd24b2e9f407e
diff --git a/_modules/maasng.py b/_modules/maasng.py
index c2676c1..4002e05 100644
--- a/_modules/maasng.py
+++ b/_modules/maasng.py
@@ -1416,7 +1416,7 @@
def create_vlan_in_fabric(name, fabric, vlan, description, primary_rack, mtu=1500,
- dhcp_on=False, update=False, vlan_id=""):
+ dhcp_on=False, update=False, vlan_id="", relay_vlan=None):
"""
Update vlan
CLI Example:
@@ -1433,6 +1433,8 @@
}
if mtu:
data['mtu'] = str(mtu)
+ if relay_vlan:
+ data['relay_vlan'] = str(relay_vlan)
vlan = str(vlan)
maas = _create_maas_client()
fabric_id = get_fabricid(fabric)
diff --git a/_states/maasng.py b/_states/maasng.py
index 96fe529..5c68652 100644
--- a/_states/maasng.py
+++ b/_states/maasng.py
@@ -372,7 +372,7 @@
return ret
-def vlan_present_in_fabric(name, fabric, vlan, primary_rack, description='', dhcp_on=False, mtu=1500):
+def vlan_present_in_fabric(name, fabric, vlan, primary_rack, description='', dhcp_on=False, mtu=1500, relay_vlan=None):
"""
:param name: Name of vlan
@@ -405,7 +405,8 @@
mtu=mtu,
description=description,
primary_rack=primary_rack,
- dhcp_on=dhcp_on)
+ dhcp_on=dhcp_on,
+ relay_vlan=relay_vlan)
ret['comment'] = 'Vlan {0} has ' \
'been created for {1}'.format(name, fabric)
elif _rez == 'update':
@@ -418,7 +419,8 @@
primary_rack=primary_rack,
dhcp_on=dhcp_on,
update=True,
- vlan_id=_id)
+ vlan_id=_id,
+ relay_vlan=relay_vlan)
ret['comment'] = 'Vlan {0} has been ' \
'updated for {1}'.format(name, fabric)
ret['changes'] = changes
diff --git a/maas/region.sls b/maas/region.sls
index 06d1970..404b42a 100644
--- a/maas/region.sls
+++ b/maas/region.sls
@@ -310,7 +310,8 @@
- fabric: {{ fabric_name }}
- name: {{ data.get('name','') }}
- description: {{ data.description }}
- - primary_rack: {{ data.get('primary_rack', '') }}
+ - primary_rack: {{ data.get('primary_rack', '') }}
+ - relay_vlan: {{ data.get('relay_vlan', '') }}
{%- endfor %}
{%- endfor %}
{%- endif %}
@@ -358,8 +359,9 @@
- fabric: {{ fabric_name }}
- name: {{ data.get('name','') }}
- description: {{ data.description }}
- - primary_rack: {{ data.get('primary_rack', '') }}
+ - primary_rack: {{ data.get('primary_rack', '') }}
- dhcp_on: {{ data.get('dhcp','False') }}
+ - relay_vlan: {{ data.get('relay_vlan', '') }}
{%- endfor %}
{%- endfor %}
{%- endif %}