diff options
Diffstat (limited to 'tools/netbox')
-rw-r--r-- | tools/netbox/scripts/netbox2gondul/netbox2gondul.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/netbox/scripts/netbox2gondul/netbox2gondul.py b/tools/netbox/scripts/netbox2gondul/netbox2gondul.py index 3c6394a..875954f 100644 --- a/tools/netbox/scripts/netbox2gondul/netbox2gondul.py +++ b/tools/netbox/scripts/netbox2gondul/netbox2gondul.py @@ -1,7 +1,7 @@ import os from django.contrib.contenttypes.models import ContentType -from django.db.models import F +from django.db.models import F, Q from django.utils.text import slugify from dcim.choices import DeviceStatusChoices, InterfaceModeChoices, InterfaceTypeChoices, SiteStatusChoices @@ -16,6 +16,9 @@ import re import requests from requests.models import HTTPBasicAuth +FLOOR = Site.objects.get(slug="floor") +RING = Site.objects.get(slug="ring") + class GondulConfigError(Exception): def __init__(self, msg): self.message = msg @@ -197,7 +200,11 @@ class Netbox2Gondul(Script): input_devices: list[Type[Device]] = data['device'] if len(input_devices) == 0: - input_devices = Device.objects.filter(status=DeviceStatusChoices.STATUS_ACTIVE) + input_devices = Device.objects.filter( + Q(site=FLOOR) | Q(site=RING) + ).filter( + status=DeviceStatusChoices.STATUS_ACTIVE, + ) networks = [] switches = [] |