From 571e9801f3c42193e8e26970d63fc0bf9933c774 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Mon, 24 Jan 2022 16:02:54 -0500 Subject: [PATCH] Closes #8195: Ensure all GenericForeignKey ID fields employ PositiveBigIntegerField --- .../migrations/0033_gfk_bigidfield.py | 18 +++++ netbox/dcim/migrations/0151_gfk_bigidfield.py | 73 +++++++++++++++++++ netbox/dcim/models/cables.py | 8 +- netbox/dcim/models/device_components.py | 2 +- .../extras/migrations/0071_gfk_bigidfield.py | 33 +++++++++ netbox/extras/models/change_logging.py | 4 +- netbox/extras/models/models.py | 4 +- netbox/ipam/migrations/0056_gfk_bigidfield.py | 23 ++++++ netbox/ipam/models/fhrp.py | 2 +- netbox/ipam/models/ip.py | 2 +- .../tenancy/migrations/0005_gfk_bigidfield.py | 18 +++++ netbox/tenancy/models/contacts.py | 2 +- 12 files changed, 177 insertions(+), 12 deletions(-) create mode 100644 netbox/circuits/migrations/0033_gfk_bigidfield.py create mode 100644 netbox/dcim/migrations/0151_gfk_bigidfield.py create mode 100644 netbox/extras/migrations/0071_gfk_bigidfield.py create mode 100644 netbox/ipam/migrations/0056_gfk_bigidfield.py create mode 100644 netbox/tenancy/migrations/0005_gfk_bigidfield.py diff --git a/netbox/circuits/migrations/0033_gfk_bigidfield.py b/netbox/circuits/migrations/0033_gfk_bigidfield.py new file mode 100644 index 000000000..970617a88 --- /dev/null +++ b/netbox/circuits/migrations/0033_gfk_bigidfield.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.11 on 2022-01-24 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('circuits', '0032_provider_service_id'), + ] + + operations = [ + migrations.AlterField( + model_name='circuittermination', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + ] diff --git a/netbox/dcim/migrations/0151_gfk_bigidfield.py b/netbox/dcim/migrations/0151_gfk_bigidfield.py new file mode 100644 index 000000000..733e6ecd5 --- /dev/null +++ b/netbox/dcim/migrations/0151_gfk_bigidfield.py @@ -0,0 +1,73 @@ +# Generated by Django 3.2.11 on 2022-01-24 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dcim', '0150_interface_speed_duplex'), + ] + + operations = [ + migrations.AlterField( + model_name='cable', + name='termination_a_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='cable', + name='termination_b_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='cablepath', + name='destination_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='cablepath', + name='origin_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='consoleport', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='consoleserverport', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='frontport', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='interface', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='powerfeed', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='poweroutlet', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='powerport', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name='rearport', + name='_link_peer_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + ] diff --git a/netbox/dcim/models/cables.py b/netbox/dcim/models/cables.py index 18bf65895..e3cc20177 100644 --- a/netbox/dcim/models/cables.py +++ b/netbox/dcim/models/cables.py @@ -38,7 +38,7 @@ class Cable(PrimaryModel): on_delete=models.PROTECT, related_name='+' ) - termination_a_id = models.PositiveIntegerField() + termination_a_id = models.PositiveBigIntegerField() termination_a = GenericForeignKey( ct_field='termination_a_type', fk_field='termination_a_id' @@ -49,7 +49,7 @@ class Cable(PrimaryModel): on_delete=models.PROTECT, related_name='+' ) - termination_b_id = models.PositiveIntegerField() + termination_b_id = models.PositiveBigIntegerField() termination_b = GenericForeignKey( ct_field='termination_b_type', fk_field='termination_b_id' @@ -327,7 +327,7 @@ class CablePath(BigIDModel): on_delete=models.CASCADE, related_name='+' ) - origin_id = models.PositiveIntegerField() + origin_id = models.PositiveBigIntegerField() origin = GenericForeignKey( ct_field='origin_type', fk_field='origin_id' @@ -339,7 +339,7 @@ class CablePath(BigIDModel): blank=True, null=True ) - destination_id = models.PositiveIntegerField( + destination_id = models.PositiveBigIntegerField( blank=True, null=True ) diff --git a/netbox/dcim/models/device_components.py b/netbox/dcim/models/device_components.py index 4a68f7c8d..9071dfe46 100644 --- a/netbox/dcim/models/device_components.py +++ b/netbox/dcim/models/device_components.py @@ -130,7 +130,7 @@ class LinkTermination(models.Model): blank=True, null=True ) - _link_peer_id = models.PositiveIntegerField( + _link_peer_id = models.PositiveBigIntegerField( blank=True, null=True ) diff --git a/netbox/extras/migrations/0071_gfk_bigidfield.py b/netbox/extras/migrations/0071_gfk_bigidfield.py new file mode 100644 index 000000000..64ce3c471 --- /dev/null +++ b/netbox/extras/migrations/0071_gfk_bigidfield.py @@ -0,0 +1,33 @@ +# Generated by Django 3.2.11 on 2022-01-24 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('extras', '0070_customlink_enabled'), + ] + + operations = [ + migrations.AlterField( + model_name='imageattachment', + name='object_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='journalentry', + name='assigned_object_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='objectchange', + name='changed_object_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='objectchange', + name='related_object_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + ] diff --git a/netbox/extras/models/change_logging.py b/netbox/extras/models/change_logging.py index 8dfeb2f18..4e703833a 100644 --- a/netbox/extras/models/change_logging.py +++ b/netbox/extras/models/change_logging.py @@ -43,7 +43,7 @@ class ObjectChange(BigIDModel): on_delete=models.PROTECT, related_name='+' ) - changed_object_id = models.PositiveIntegerField() + changed_object_id = models.PositiveBigIntegerField() changed_object = GenericForeignKey( ct_field='changed_object_type', fk_field='changed_object_id' @@ -55,7 +55,7 @@ class ObjectChange(BigIDModel): blank=True, null=True ) - related_object_id = models.PositiveIntegerField( + related_object_id = models.PositiveBigIntegerField( blank=True, null=True ) diff --git a/netbox/extras/models/models.py b/netbox/extras/models/models.py index 7189aed03..143bc7d9b 100644 --- a/netbox/extras/models/models.py +++ b/netbox/extras/models/models.py @@ -351,7 +351,7 @@ class ImageAttachment(WebhooksMixin, ChangeLoggedModel): to=ContentType, on_delete=models.CASCADE ) - object_id = models.PositiveIntegerField() + object_id = models.PositiveBigIntegerField() parent = GenericForeignKey( ct_field='content_type', fk_field='object_id' @@ -431,7 +431,7 @@ class JournalEntry(WebhooksMixin, ChangeLoggedModel): to=ContentType, on_delete=models.CASCADE ) - assigned_object_id = models.PositiveIntegerField() + assigned_object_id = models.PositiveBigIntegerField() assigned_object = GenericForeignKey( ct_field='assigned_object_type', fk_field='assigned_object_id' diff --git a/netbox/ipam/migrations/0056_gfk_bigidfield.py b/netbox/ipam/migrations/0056_gfk_bigidfield.py new file mode 100644 index 000000000..f40f65271 --- /dev/null +++ b/netbox/ipam/migrations/0056_gfk_bigidfield.py @@ -0,0 +1,23 @@ +# Generated by Django 3.2.11 on 2022-01-24 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('ipam', '0055_servicetemplate'), + ] + + operations = [ + migrations.AlterField( + model_name='fhrpgroupassignment', + name='interface_id', + field=models.PositiveBigIntegerField(), + ), + migrations.AlterField( + model_name='ipaddress', + name='assigned_object_id', + field=models.PositiveBigIntegerField(blank=True, null=True), + ), + ] diff --git a/netbox/ipam/models/fhrp.py b/netbox/ipam/models/fhrp.py index a0e575e45..f0e3c2a23 100644 --- a/netbox/ipam/models/fhrp.py +++ b/netbox/ipam/models/fhrp.py @@ -74,7 +74,7 @@ class FHRPGroupAssignment(WebhooksMixin, ChangeLoggedModel): to=ContentType, on_delete=models.CASCADE ) - interface_id = models.PositiveIntegerField() + interface_id = models.PositiveBigIntegerField() interface = GenericForeignKey( ct_field='interface_type', fk_field='interface_id' diff --git a/netbox/ipam/models/ip.py b/netbox/ipam/models/ip.py index 44dd84525..632d71034 100644 --- a/netbox/ipam/models/ip.py +++ b/netbox/ipam/models/ip.py @@ -801,7 +801,7 @@ class IPAddress(PrimaryModel): blank=True, null=True ) - assigned_object_id = models.PositiveIntegerField( + assigned_object_id = models.PositiveBigIntegerField( blank=True, null=True ) diff --git a/netbox/tenancy/migrations/0005_gfk_bigidfield.py b/netbox/tenancy/migrations/0005_gfk_bigidfield.py new file mode 100644 index 000000000..12bbde295 --- /dev/null +++ b/netbox/tenancy/migrations/0005_gfk_bigidfield.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.11 on 2022-01-24 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tenancy', '0004_extend_tag_support'), + ] + + operations = [ + migrations.AlterField( + model_name='contactassignment', + name='object_id', + field=models.PositiveBigIntegerField(), + ), + ] diff --git a/netbox/tenancy/models/contacts.py b/netbox/tenancy/models/contacts.py index ecc599021..cacd682cb 100644 --- a/netbox/tenancy/models/contacts.py +++ b/netbox/tenancy/models/contacts.py @@ -131,7 +131,7 @@ class ContactAssignment(WebhooksMixin, ChangeLoggedModel): to=ContentType, on_delete=models.CASCADE ) - object_id = models.PositiveIntegerField() + object_id = models.PositiveBigIntegerField() object = GenericForeignKey( ct_field='content_type', fk_field='object_id'