From f3dbde984f5926f98e0eab97b4263427d9683267 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Date: Fri, 14 Jun 2024 12:07:44 -0700 Subject: [PATCH] 15156 review changes --- netbox/dcim/api/serializers_/devicetype_components.py | 10 ---------- netbox/extras/webhooks.py | 6 ++++++ netbox/netbox/api/serializers/base.py | 8 ++++---- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/netbox/dcim/api/serializers_/devicetype_components.py b/netbox/dcim/api/serializers_/devicetype_components.py index cd72236f4..48470f62d 100644 --- a/netbox/dcim/api/serializers_/devicetype_components.py +++ b/netbox/dcim/api/serializers_/devicetype_components.py @@ -32,7 +32,6 @@ __all__ = ( class ConsolePortTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:consoleporttemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -62,7 +61,6 @@ class ConsolePortTemplateSerializer(ValidatedModelSerializer): class ConsoleServerPortTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:consoleserverporttemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -92,7 +90,6 @@ class ConsoleServerPortTemplateSerializer(ValidatedModelSerializer): class PowerPortTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:powerporttemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -123,7 +120,6 @@ class PowerPortTemplateSerializer(ValidatedModelSerializer): class PowerOutletTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:poweroutlettemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -165,7 +161,6 @@ class PowerOutletTemplateSerializer(ValidatedModelSerializer): class InterfaceTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:interfacetemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -213,7 +208,6 @@ class InterfaceTemplateSerializer(ValidatedModelSerializer): class RearPortTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:rearporttemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( required=False, @@ -239,7 +233,6 @@ class RearPortTemplateSerializer(ValidatedModelSerializer): class FrontPortTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:frontporttemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True, @@ -266,7 +259,6 @@ class FrontPortTemplateSerializer(ValidatedModelSerializer): class ModuleBayTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:modulebaytemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True @@ -282,7 +274,6 @@ class ModuleBayTemplateSerializer(ValidatedModelSerializer): class DeviceBayTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:devicebaytemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True @@ -298,7 +289,6 @@ class DeviceBayTemplateSerializer(ValidatedModelSerializer): class InventoryItemTemplateSerializer(ValidatedModelSerializer): - url = serializers.HyperlinkedIdentityField(view_name='dcim-api:inventoryitemtemplate-detail') display_url = serializers.CharField(allow_null=True, read_only=True) device_type = DeviceTypeSerializer( nested=True diff --git a/netbox/extras/webhooks.py b/netbox/extras/webhooks.py index 53ec161d7..64208cc67 100644 --- a/netbox/extras/webhooks.py +++ b/netbox/extras/webhooks.py @@ -1,6 +1,7 @@ import hashlib import hmac import logging +import json import requests from django.conf import settings @@ -79,6 +80,11 @@ def send_webhook(event_rule, model_name, event, data, timestamp, username, reque logger.error(f"Error forming HTTP request: {e}") raise e + print('--- data ---') + print(json.dumps(data, indent=4)) + print('--- snapshots ---') + print(json.dumps(snapshots, indent=4)) + print("") # If a secret key is defined, sign the request with a hash of the key and its content if webhook.secret != '': prepared_request.headers['X-Hook-Signature'] = generate_signature(prepared_request.body, webhook.secret) diff --git a/netbox/netbox/api/serializers/base.py b/netbox/netbox/api/serializers/base.py index 8f4b96def..7ec6e161d 100644 --- a/netbox/netbox/api/serializers/base.py +++ b/netbox/netbox/api/serializers/base.py @@ -13,7 +13,7 @@ __all__ = ( ) -class NetBoxApiHyperlinkedIdentityField(serializers.HyperlinkedIdentityField): +class NetBoxAPIHyperlinkedIdentityField(serializers.HyperlinkedIdentityField): def __init__(self, model, **kwargs): model_name = model._meta.model_name @@ -22,7 +22,7 @@ class NetBoxApiHyperlinkedIdentityField(serializers.HyperlinkedIdentityField): super().__init__(view_name, **kwargs) -class NetBoxUrlHyperlinkedIdentityField(serializers.HyperlinkedIdentityField): +class NetBoxURLHyperlinkedIdentityField(serializers.HyperlinkedIdentityField): def __init__(self, model, **kwargs): model_name = model._meta.model_name @@ -59,11 +59,11 @@ class BaseModelSerializer(serializers.ModelSerializer): # don't override the field if the class already defines these so can set lookup_field if ("url" in self.fields and not isinstance(self.fields["url"], serializers.HyperlinkedIdentityField) and isinstance(self.fields["url"], serializers.RelatedField)): - self.fields["url"] = NetBoxApiHyperlinkedIdentityField(self.Meta.model) + self.fields["url"] = NetBoxAPIHyperlinkedIdentityField(self.Meta.model) if ("display_url" in self.fields and not isinstance(self.fields["display_url"], serializers.HyperlinkedIdentityField) and isinstance(self.fields["display_url"], serializers.RelatedField)): - self.fields["display_url"] = NetBoxUrlHyperlinkedIdentityField(self.Meta.model) + self.fields["display_url"] = NetBoxURLHyperlinkedIdentityField(self.Meta.model) super().__init__(*args, **kwargs)