17614 Disallow removal of virtual chassis from device if set as master (#17731)

* 17614 Disallow removal of virtual chassis from device if set as master

* 17614 review changes

* 17614 review changes
This commit is contained in:
Arthur Hanson 2024-10-11 13:04:42 -07:00 committed by GitHub
parent a964645c0a
commit 9a655d80e1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -983,6 +983,13 @@ class Device(
'vc_position': _("A device assigned to a virtual chassis must have its position defined.")
})
if hasattr(self, 'vc_master_for') and self.vc_master_for and self.vc_master_for != self.virtual_chassis:
raise ValidationError({
'virtual_chassis': _('Device cannot be removed from virtual chassis {virtual_chassis} because it is currently designated as its master.').format(
virtual_chassis=self.vc_master_for
)
})
def _instantiate_components(self, queryset, bulk_create=True):
"""
Instantiate components for the device from the specified component templates.