From 3cb520a4681a76fd9c6800a6bc5ac9ae7ea9918f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A5kon=20Solbj=C3=B8rg?= Date: Sun, 2 Apr 2023 13:59:33 +0200 Subject: feat(netbox2gondul): By default, only sync ringen + floor --- tools/netbox/scripts/netbox2gondul/netbox2gondul.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'tools/netbox/scripts') 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 = [] -- cgit v1.2.3