Replaces device_role with role on device model (#13342)

* replaces device_role with role on device model #6391

* fixes lint issue #6391

* revert the database user

* revert test_runner comment

* changes as per review

* Update references to device_role column in UserConfigs

---------

Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
This commit is contained in:
Abhimanyu Saharan
2023-08-02 19:25:52 +05:30
committed by GitHub
parent 79030ecab2
commit 0bb86f1e7d
37 changed files with 422 additions and 331 deletions
+2 -3
View File
@@ -19,8 +19,7 @@ class ConfigContextQuerySet(RestrictedQuerySet):
aggregate_data: If True, use the JSONBAgg aggregate function to return only the list of JSON data objects
"""
# `device_role` for Device; `role` for VirtualMachine
role = getattr(obj, 'device_role', None) or obj.role
role = obj.role
# Device type and location assignment is relevant only for Devices
device_type = getattr(obj, 'device_type', None)
@@ -121,7 +120,7 @@ class ConfigContextModelQuerySet(RestrictedQuerySet):
if self.model._meta.model_name == 'device':
base_query.add((Q(locations=OuterRef('location')) | Q(locations=None)), Q.AND)
base_query.add((Q(device_types=OuterRef('device_type')) | Q(device_types=None)), Q.AND)
base_query.add((Q(roles=OuterRef('device_role')) | Q(roles=None)), Q.AND)
base_query.add((Q(roles=OuterRef('role')) | Q(roles=None)), Q.AND)
base_query.add((Q(sites=OuterRef('site')) | Q(sites=None)), Q.AND)
region_field = 'site__region'
sitegroup_field = 'site__group'
+2 -2
View File
@@ -579,9 +579,9 @@ class ConfigContextTest(APIViewTestCases.APIViewTestCase):
"""
manufacturer = Manufacturer.objects.create(name='Manufacturer 1', slug='manufacturer-1')
devicetype = DeviceType.objects.create(manufacturer=manufacturer, model='Device Type 1', slug='device-type-1')
devicerole = DeviceRole.objects.create(name='Device Role 1', slug='device-role-1')
role = DeviceRole.objects.create(name='Device Role 1', slug='device-role-1')
site = Site.objects.create(name='Site-1', slug='site-1')
device = Device.objects.create(name='Device 1', device_type=devicetype, device_role=devicerole, site=site)
device = Device.objects.create(name='Device 1', device_type=devicetype, role=role, site=site)
# Test default config contexts (created at test setup)
rendered_context = device.get_config_context()
+5 -5
View File
@@ -44,7 +44,7 @@ class ConfigContextTest(TestCase):
manufacturer = Manufacturer.objects.create(name='Manufacturer 1', slug='manufacturer-1')
devicetype = DeviceType.objects.create(manufacturer=manufacturer, model='Device Type 1', slug='device-type-1')
devicerole = DeviceRole.objects.create(name='Device Role 1', slug='device-role-1')
role = DeviceRole.objects.create(name='Device Role 1', slug='device-role-1')
region = Region.objects.create(name='Region')
sitegroup = SiteGroup.objects.create(name='Site Group')
site = Site.objects.create(name='Site 1', slug='site-1', region=region, group=sitegroup)
@@ -58,7 +58,7 @@ class ConfigContextTest(TestCase):
Device.objects.create(
name='Device 1',
device_type=devicetype,
device_role=devicerole,
role=role,
site=site,
location=location
)
@@ -252,7 +252,7 @@ class ConfigContextTest(TestCase):
location=location,
tenant=tenant,
platform=platform,
device_role=DeviceRole.objects.first(),
role=DeviceRole.objects.first(),
device_type=DeviceType.objects.first()
)
device.tags.add(tag)
@@ -382,7 +382,7 @@ class ConfigContextTest(TestCase):
site=site,
tenant=tenant,
platform=platform,
device_role=DeviceRole.objects.first(),
role=DeviceRole.objects.first(),
device_type=DeviceType.objects.first()
)
device.tags.set(tags)
@@ -430,7 +430,7 @@ class ConfigContextTest(TestCase):
site=site,
tenant=tenant,
platform=platform,
device_role=DeviceRole.objects.first(),
role=DeviceRole.objects.first(),
device_type=DeviceType.objects.first()
)
device.tags.set([tag1, tag2])