Configure the nat interface automatically
- Refactor nbhelper
- Generate device's netplan config from netbox data
This change is for [AETHER-1371]
Change-Id: Ieed77850c7405c2634bfa3b78bd2d9086b8f837b
diff --git a/scripts/edgeconfig.py b/scripts/edgeconfig.py
index 5dc21fc..2faf9de 100644
--- a/scripts/edgeconfig.py
+++ b/scripts/edgeconfig.py
@@ -33,8 +33,8 @@
},
}
- args = nbhelper.parse_cli_args(extra_args)
- nbh = nbhelper.NBHelper(args)
+ args = nbhelper.initialize(extra_args)
+ tenant = nbhelper.NBTenant()
# use base_config for additional items
yaml_out = yaml.safe_load(args.base_config.read())
@@ -44,15 +44,11 @@
# reverse zones aggregate across RFC1918 IP prefix
dns_reverse_zones = nbhelper.NBDNSReverseZones()
-
- for prefix in nbh.all_prefixes():
+ for prefix in tenant.get_prefixes().values():
nbhelper.NBDNSForwardZone.get_fwd_zone(prefix)
-
dns_reverse_zones.add_prefix(prefix)
-
dhcpd_subnet = nbhelper.NBDHCPSubnet(prefix)
-
dhcpd_if = dhcpd_subnet.dhcpd_interface
if dhcpd_if and dhcpd_if not in dhcpd_interfaces:
@@ -60,7 +56,8 @@
dhcpd_subnets.append(dhcpd_subnet)
- # yaml_out["devices"] = nbhelper.NBDevice.all_devs()
+ # yaml_out["devices"] = nbhelper.NBDevice.all_devs()
+ yaml_out["netprep_netplan"] = tenant.generate_netplan()
yaml_out["dns_forward_zones"] = nbhelper.NBDNSForwardZone.all_fwd_zones()
yaml_out["dns_reverse_zones"] = dns_reverse_zones
yaml_out["dhcpd_subnets"] = dhcpd_subnets