Change logic to prevent sys.exit from stopping script processing
This commit is contained in:
parent
5769684c98
commit
5292afaae0
28 changed files with 544 additions and 572 deletions
|
@ -5,10 +5,9 @@ from startup_script_utils import load_yaml, set_permissions
|
||||||
from users.models import Token
|
from users.models import Token
|
||||||
|
|
||||||
users = load_yaml('/opt/netbox/initializers/users.yml')
|
users = load_yaml('/opt/netbox/initializers/users.yml')
|
||||||
if users is None:
|
if not users is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for username, user_details in users.items():
|
for username, user_details in users.items():
|
||||||
if not User.objects.filter(username=username):
|
if not User.objects.filter(username=username):
|
||||||
user = User.objects.create_user(
|
user = User.objects.create_user(
|
||||||
username = username,
|
username = username,
|
||||||
|
|
|
@ -4,10 +4,9 @@ from django.contrib.auth.models import Group, User
|
||||||
from startup_script_utils import load_yaml, set_permissions
|
from startup_script_utils import load_yaml, set_permissions
|
||||||
|
|
||||||
groups = load_yaml('/opt/netbox/initializers/groups.yml')
|
groups = load_yaml('/opt/netbox/initializers/groups.yml')
|
||||||
if groups is None:
|
if not groups is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for groupname, group_details in groups.items():
|
for groupname, group_details in groups.items():
|
||||||
group, created = Group.objects.get_or_create(name=groupname)
|
group, created = Group.objects.get_or_create(name=groupname)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -14,10 +14,9 @@ def get_class_for_class_path(class_path):
|
||||||
|
|
||||||
customfields = load_yaml('/opt/netbox/initializers/custom_fields.yml')
|
customfields = load_yaml('/opt/netbox/initializers/custom_fields.yml')
|
||||||
|
|
||||||
if customfields is None:
|
if not customfields is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for cf_name, cf_details in customfields.items():
|
for cf_name, cf_details in customfields.items():
|
||||||
custom_field, created = CustomField.objects.get_or_create(name = cf_name)
|
custom_field, created = CustomField.objects.get_or_create(name = cf_name)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -4,14 +4,13 @@ import sys
|
||||||
|
|
||||||
regions = load_yaml('/opt/netbox/initializers/regions.yml')
|
regions = load_yaml('/opt/netbox/initializers/regions.yml')
|
||||||
|
|
||||||
if regions is None:
|
if not regions is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'parent': (Region, 'name')
|
'parent': (Region, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in regions:
|
for params in regions:
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
if assoc in params:
|
if assoc in params:
|
||||||
|
|
|
@ -6,15 +6,14 @@ import sys
|
||||||
|
|
||||||
sites = load_yaml('/opt/netbox/initializers/sites.yml')
|
sites = load_yaml('/opt/netbox/initializers/sites.yml')
|
||||||
|
|
||||||
if sites is None:
|
if not sites is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'region': (Region, 'name'),
|
'region': (Region, 'name'),
|
||||||
'tenant': (Tenant, 'name')
|
'tenant': (Tenant, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in sites:
|
for params in sites:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
|
|
|
@ -4,10 +4,9 @@ import sys
|
||||||
|
|
||||||
manufacturers = load_yaml('/opt/netbox/initializers/manufacturers.yml')
|
manufacturers = load_yaml('/opt/netbox/initializers/manufacturers.yml')
|
||||||
|
|
||||||
if manufacturers is None:
|
if not manufacturers is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in manufacturers:
|
for params in manufacturers:
|
||||||
manufacturer, created = Manufacturer.objects.get_or_create(**params)
|
manufacturer, created = Manufacturer.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -6,19 +6,18 @@ import sys
|
||||||
|
|
||||||
device_types = load_yaml('/opt/netbox/initializers/device_types.yml')
|
device_types = load_yaml('/opt/netbox/initializers/device_types.yml')
|
||||||
|
|
||||||
if device_types is None:
|
if not device_types is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'manufacturer': (Manufacturer, 'name')
|
'manufacturer': (Manufacturer, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'region': (Region, 'name'),
|
'region': (Region, 'name'),
|
||||||
'tenant': (Tenant, 'name')
|
'tenant': (Tenant, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in device_types:
|
for params in device_types:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -6,10 +6,9 @@ import sys
|
||||||
|
|
||||||
rack_roles = load_yaml('/opt/netbox/initializers/rack_roles.yml')
|
rack_roles = load_yaml('/opt/netbox/initializers/rack_roles.yml')
|
||||||
|
|
||||||
if rack_roles is None:
|
if not rack_roles is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in rack_roles:
|
for params in rack_roles:
|
||||||
if 'color' in params:
|
if 'color' in params:
|
||||||
color = params.pop('color')
|
color = params.pop('color')
|
||||||
|
|
||||||
|
|
|
@ -4,14 +4,13 @@ import sys
|
||||||
|
|
||||||
rack_groups = load_yaml('/opt/netbox/initializers/rack_groups.yml')
|
rack_groups = load_yaml('/opt/netbox/initializers/rack_groups.yml')
|
||||||
|
|
||||||
if rack_groups is None:
|
if not rack_groups is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'site': (Site, 'name')
|
'site': (Site, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in rack_groups:
|
for params in rack_groups:
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
model, field = details
|
model, field = details
|
||||||
|
|
|
@ -6,20 +6,19 @@ import sys
|
||||||
|
|
||||||
racks = load_yaml('/opt/netbox/initializers/racks.yml')
|
racks = load_yaml('/opt/netbox/initializers/racks.yml')
|
||||||
|
|
||||||
if racks is None:
|
if not racks is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'site': (Site, 'name')
|
'site': (Site, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'role': (RackRole, 'name'),
|
'role': (RackRole, 'name'),
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'group': (RackGroup, 'name')
|
'group': (RackGroup, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in racks:
|
for params in racks:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -5,10 +5,9 @@ import sys
|
||||||
|
|
||||||
device_roles = load_yaml('/opt/netbox/initializers/device_roles.yml')
|
device_roles = load_yaml('/opt/netbox/initializers/device_roles.yml')
|
||||||
|
|
||||||
if device_roles is None:
|
if not device_roles is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in device_roles:
|
for params in device_roles:
|
||||||
|
|
||||||
if 'color' in params:
|
if 'color' in params:
|
||||||
color = params.pop('color')
|
color = params.pop('color')
|
||||||
|
|
|
@ -4,14 +4,13 @@ import sys
|
||||||
|
|
||||||
platforms = load_yaml('/opt/netbox/initializers/platforms.yml')
|
platforms = load_yaml('/opt/netbox/initializers/platforms.yml')
|
||||||
|
|
||||||
if platforms is None:
|
if not platforms is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'manufacturer': (Manufacturer, 'name'),
|
'manufacturer': (Manufacturer, 'name'),
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in platforms:
|
for params in platforms:
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
if assoc in params:
|
if assoc in params:
|
||||||
|
|
|
@ -4,10 +4,9 @@ import sys
|
||||||
|
|
||||||
tenant_groups = load_yaml('/opt/netbox/initializers/tenant_groups.yml')
|
tenant_groups = load_yaml('/opt/netbox/initializers/tenant_groups.yml')
|
||||||
|
|
||||||
if tenant_groups is None:
|
if not tenant_groups is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in tenant_groups:
|
for params in tenant_groups:
|
||||||
tenant_group, created = TenantGroup.objects.get_or_create(**params)
|
tenant_group, created = TenantGroup.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -5,14 +5,13 @@ import sys
|
||||||
|
|
||||||
tenants = load_yaml('/opt/netbox/initializers/tenants.yml')
|
tenants = load_yaml('/opt/netbox/initializers/tenants.yml')
|
||||||
|
|
||||||
if tenants is None:
|
if not tenants is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'group': (TenantGroup, 'name')
|
'group': (TenantGroup, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in tenants:
|
for params in tenants:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
|
|
|
@ -8,25 +8,24 @@ import sys
|
||||||
|
|
||||||
devices = load_yaml('/opt/netbox/initializers/devices.yml')
|
devices = load_yaml('/opt/netbox/initializers/devices.yml')
|
||||||
|
|
||||||
if devices is None:
|
if not devices is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'device_role': (DeviceRole, 'name'),
|
'device_role': (DeviceRole, 'name'),
|
||||||
'device_type': (DeviceType, 'model'),
|
'device_type': (DeviceType, 'model'),
|
||||||
'site': (Site, 'name')
|
'site': (Site, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'platform': (Platform, 'name'),
|
'platform': (Platform, 'name'),
|
||||||
'rack': (Rack, 'name'),
|
'rack': (Rack, 'name'),
|
||||||
'cluster': (Cluster, 'name'),
|
'cluster': (Cluster, 'name'),
|
||||||
'primary_ip4': (IPAddress, 'address'),
|
'primary_ip4': (IPAddress, 'address'),
|
||||||
'primary_ip6': (IPAddress, 'address')
|
'primary_ip6': (IPAddress, 'address')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in devices:
|
for params in devices:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -4,10 +4,9 @@ import sys
|
||||||
|
|
||||||
cluster_types = load_yaml('/opt/netbox/initializers/cluster_types.yml')
|
cluster_types = load_yaml('/opt/netbox/initializers/cluster_types.yml')
|
||||||
|
|
||||||
if cluster_types is None:
|
if not cluster_types is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in cluster_types:
|
for params in cluster_types:
|
||||||
cluster_type, created = ClusterType.objects.get_or_create(**params)
|
cluster_type, created = ClusterType.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -4,10 +4,9 @@ import sys
|
||||||
|
|
||||||
rirs = load_yaml('/opt/netbox/initializers/rirs.yml')
|
rirs = load_yaml('/opt/netbox/initializers/rirs.yml')
|
||||||
|
|
||||||
if rirs is None:
|
if not rirs is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in rirs:
|
for params in rirs:
|
||||||
rir, created = RIR.objects.get_or_create(**params)
|
rir, created = RIR.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -8,14 +8,13 @@ import sys
|
||||||
|
|
||||||
aggregates = load_yaml('/opt/netbox/initializers/aggregates.yml')
|
aggregates = load_yaml('/opt/netbox/initializers/aggregates.yml')
|
||||||
|
|
||||||
if aggregates is None:
|
if not aggregates is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'rir': (RIR, 'name')
|
'rir': (RIR, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in aggregates:
|
for params in aggregates:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
params['prefix'] = IPNetwork(params['prefix'])
|
params['prefix'] = IPNetwork(params['prefix'])
|
||||||
|
|
||||||
|
|
|
@ -6,19 +6,18 @@ import sys
|
||||||
|
|
||||||
clusters = load_yaml('/opt/netbox/initializers/clusters.yml')
|
clusters = load_yaml('/opt/netbox/initializers/clusters.yml')
|
||||||
|
|
||||||
if clusters is None:
|
if not clusters is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'type': (ClusterType, 'name')
|
'type': (ClusterType, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'site': (Site, 'name'),
|
'site': (Site, 'name'),
|
||||||
'group': (ClusterGroup, 'name')
|
'group': (ClusterGroup, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in clusters:
|
for params in clusters:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -8,14 +8,13 @@ import sys
|
||||||
|
|
||||||
vrfs = load_yaml('/opt/netbox/initializers/vrfs.yml')
|
vrfs = load_yaml('/opt/netbox/initializers/vrfs.yml')
|
||||||
|
|
||||||
if vrfs is None:
|
if not vrfs is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'tenant': (Tenant, 'name')
|
'tenant': (Tenant, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in vrfs:
|
for params in vrfs:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
|
|
|
@ -4,10 +4,9 @@ import sys
|
||||||
|
|
||||||
roles = load_yaml('/opt/netbox/initializers/prefix_vlan_roles.yml')
|
roles = load_yaml('/opt/netbox/initializers/prefix_vlan_roles.yml')
|
||||||
|
|
||||||
if roles is None:
|
if not roles is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
for params in roles:
|
for params in roles:
|
||||||
role, created = Role.objects.get_or_create(**params)
|
role, created = Role.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
|
|
@ -6,14 +6,13 @@ import sys
|
||||||
|
|
||||||
vlan_groups = load_yaml('/opt/netbox/initializers/vlan_groups.yml')
|
vlan_groups = load_yaml('/opt/netbox/initializers/vlan_groups.yml')
|
||||||
|
|
||||||
if vlan_groups is None:
|
if not vlan_groups is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'site': (Site, 'name')
|
'site': (Site, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in vlan_groups:
|
for params in vlan_groups:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
|
|
|
@ -7,18 +7,17 @@ import sys
|
||||||
|
|
||||||
vlans = load_yaml('/opt/netbox/initializers/vlans.yml')
|
vlans = load_yaml('/opt/netbox/initializers/vlans.yml')
|
||||||
|
|
||||||
if vlans is None:
|
if not vlans is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'site': (Site, 'name'),
|
'site': (Site, 'name'),
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'tenant_group': (TenantGroup, 'name'),
|
'tenant_group': (TenantGroup, 'name'),
|
||||||
'group': (VLANGroup, 'name'),
|
'group': (VLANGroup, 'name'),
|
||||||
'role': (Role, 'name')
|
'role': (Role, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in vlans:
|
for params in vlans:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in optional_assocs.items():
|
for assoc, details in optional_assocs.items():
|
||||||
|
|
|
@ -8,19 +8,18 @@ import sys
|
||||||
|
|
||||||
prefixes = load_yaml('/opt/netbox/initializers/prefixes.yml')
|
prefixes = load_yaml('/opt/netbox/initializers/prefixes.yml')
|
||||||
|
|
||||||
if prefixes is None:
|
if not prefixes is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'site': (Site, 'name'),
|
'site': (Site, 'name'),
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'tenant_group': (TenantGroup, 'name'),
|
'tenant_group': (TenantGroup, 'name'),
|
||||||
'vlan': (VLAN, 'name'),
|
'vlan': (VLAN, 'name'),
|
||||||
'role': (Role, 'name'),
|
'role': (Role, 'name'),
|
||||||
'vrf': (VRF, 'name')
|
'vrf': (VRF, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in prefixes:
|
for params in prefixes:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
params['prefix'] = IPNetwork(params['prefix'])
|
params['prefix'] = IPNetwork(params['prefix'])
|
||||||
|
|
||||||
|
|
|
@ -7,20 +7,19 @@ import sys
|
||||||
|
|
||||||
virtual_machines = load_yaml('/opt/netbox/initializers/virtual_machines.yml')
|
virtual_machines = load_yaml('/opt/netbox/initializers/virtual_machines.yml')
|
||||||
|
|
||||||
if virtual_machines is None:
|
if not virtual_machines is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'cluster': (Cluster, 'name')
|
'cluster': (Cluster, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'platform': (Platform, 'name'),
|
'platform': (Platform, 'name'),
|
||||||
'role': (DeviceRole, 'name')
|
'role': (DeviceRole, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in virtual_machines:
|
for params in virtual_machines:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -6,14 +6,13 @@ import sys
|
||||||
|
|
||||||
interfaces = load_yaml('/opt/netbox/initializers/virtualization_interfaces.yml')
|
interfaces = load_yaml('/opt/netbox/initializers/virtualization_interfaces.yml')
|
||||||
|
|
||||||
if interfaces is None:
|
if not interfaces is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'virtual_machine': (VirtualMachine, 'name')
|
'virtual_machine': (VirtualMachine, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in interfaces:
|
for params in interfaces:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -5,14 +5,13 @@ import sys
|
||||||
|
|
||||||
interfaces= load_yaml('/opt/netbox/initializers/dcim_interfaces.yml')
|
interfaces= load_yaml('/opt/netbox/initializers/dcim_interfaces.yml')
|
||||||
|
|
||||||
if interfaces is None:
|
if not interfaces is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
required_assocs = {
|
required_assocs = {
|
||||||
'device': (Device, 'name')
|
'device': (Device, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in interfaces:
|
for params in interfaces:
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
||||||
for assoc, details in required_assocs.items():
|
for assoc, details in required_assocs.items():
|
||||||
|
|
|
@ -10,16 +10,15 @@ import sys
|
||||||
|
|
||||||
ip_addresses = load_yaml('/opt/netbox/initializers/ip_addresses.yml')
|
ip_addresses = load_yaml('/opt/netbox/initializers/ip_addresses.yml')
|
||||||
|
|
||||||
if ip_addresses is None:
|
if not ip_addresses is None:
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
optional_assocs = {
|
optional_assocs = {
|
||||||
'tenant': (Tenant, 'name'),
|
'tenant': (Tenant, 'name'),
|
||||||
'vrf': (VRF, 'name'),
|
'vrf': (VRF, 'name'),
|
||||||
'interface': (Interface, 'name')
|
'interface': (Interface, 'name')
|
||||||
}
|
}
|
||||||
|
|
||||||
for params in ip_addresses:
|
for params in ip_addresses:
|
||||||
vm = params.pop('virtual_machine', None)
|
vm = params.pop('virtual_machine', None)
|
||||||
device = params.pop('device', None)
|
device = params.pop('device', None)
|
||||||
custom_fields = params.pop('custom_fields', None)
|
custom_fields = params.pop('custom_fields', None)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue