diff --git a/module/netbox/object_classes.py b/module/netbox/object_classes.py index dd84862f..8cb8ff82 100644 --- a/module/netbox/object_classes.py +++ b/module/netbox/object_classes.py @@ -1624,6 +1624,7 @@ class NBVM(NetBoxObject): def __init__(self, *args, **kwargs): self.data_model = { "name": 64, + "serial": 50, "status": ["offline", "active", "planned", "staged", "failed", "decommissioning"], "cluster": NBCluster, "role": NBDeviceRole, diff --git a/module/sources/vmware/connection.py b/module/sources/vmware/connection.py index f8f8bfd8..27c177c8 100644 --- a/module/sources/vmware/connection.py +++ b/module/sources/vmware/connection.py @@ -2196,6 +2196,10 @@ def add_virtual_machine(self, obj): if isinstance(comp, vim.vm.device.VirtualDisk) ]) / 1024 / 1024) + # Add adaptation for the new 'serial' field in NetBox 4.1.0 VM model + if version.parse(self.inventory.netbox_api_version) >= version.parse("4.1.0"): + vm_data["serial"] = vm_uuid + if platform is not None: vm_data["platform"] = {"name": platform} if annotation is not None: