diff --git a/netbox/virtualization/apps.py b/netbox/virtualization/apps.py index f0af9a163..fe35fee78 100644 --- a/netbox/virtualization/apps.py +++ b/netbox/virtualization/apps.py @@ -1,5 +1,7 @@ from django.apps import AppConfig +from netbox import denormalized + class VirtualizationConfig(AppConfig): name = 'virtualization' @@ -9,5 +11,10 @@ class VirtualizationConfig(AppConfig): from .models import VirtualMachine from utilities.counters import connect_counters + # Register denormalized fields + denormalized.register(VirtualMachine, 'cluster', { + 'site': 'site', + }) + # Register counters connect_counters(VirtualMachine) diff --git a/netbox/virtualization/models/clusters.py b/netbox/virtualization/models/clusters.py index 1bfa6b421..f8acc4c36 100644 --- a/netbox/virtualization/models/clusters.py +++ b/netbox/virtualization/models/clusters.py @@ -141,8 +141,3 @@ class Cluster(ContactsMixin, PrimaryModel): "{count} devices are assigned as hosts for this cluster but are not in site {site}" ).format(count=nonsite_devices, site=self.site) }) - - def save(self, *args, **kwargs): - # Update Site for all assigned virtual machines - super().save(*args, **kwargs) - self.virtual_machines.all().update(site=self.site)