mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-18 13:38:16 -06:00
Rename clear_webhooks signal to clear_events
This commit is contained in:
parent
43eef0effe
commit
f68b8126dd
@ -13,7 +13,7 @@ from core.models import Job
|
|||||||
from extras.api.serializers import ScriptOutputSerializer
|
from extras.api.serializers import ScriptOutputSerializer
|
||||||
from extras.context_managers import event_tracking
|
from extras.context_managers import event_tracking
|
||||||
from extras.scripts import get_module_and_script
|
from extras.scripts import get_module_and_script
|
||||||
from extras.signals import clear_webhooks
|
from extras.signals import clear_events
|
||||||
from utilities.exceptions import AbortTransaction
|
from utilities.exceptions import AbortTransaction
|
||||||
from utilities.utils import NetBoxFakeRequest
|
from utilities.utils import NetBoxFakeRequest
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ class Command(BaseCommand):
|
|||||||
raise AbortTransaction()
|
raise AbortTransaction()
|
||||||
except AbortTransaction:
|
except AbortTransaction:
|
||||||
script.log_info("Database changes have been reverted automatically.")
|
script.log_info("Database changes have been reverted automatically.")
|
||||||
clear_webhooks.send(request)
|
clear_events.send(request)
|
||||||
job.data = ScriptOutputSerializer(script).data
|
job.data = ScriptOutputSerializer(script).data
|
||||||
job.terminate()
|
job.terminate()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -57,7 +57,7 @@ class Command(BaseCommand):
|
|||||||
)
|
)
|
||||||
script.log_info("Database changes have been reverted due to error.")
|
script.log_info("Database changes have been reverted due to error.")
|
||||||
logger.error(f"Exception raised during script execution: {e}")
|
logger.error(f"Exception raised during script execution: {e}")
|
||||||
clear_webhooks.send(request)
|
clear_events.send(request)
|
||||||
job.data = ScriptOutputSerializer(script).data
|
job.data = ScriptOutputSerializer(script).data
|
||||||
job.terminate(status=JobStatusChoices.STATUS_ERRORED, error=str(e))
|
job.terminate(status=JobStatusChoices.STATUS_ERRORED, error=str(e))
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ from core.models import Job
|
|||||||
from extras.api.serializers import ScriptOutputSerializer
|
from extras.api.serializers import ScriptOutputSerializer
|
||||||
from extras.choices import LogLevelChoices
|
from extras.choices import LogLevelChoices
|
||||||
from extras.models import ScriptModule
|
from extras.models import ScriptModule
|
||||||
from extras.signals import clear_webhooks
|
from extras.signals import clear_events
|
||||||
from ipam.formfields import IPAddressFormField, IPNetworkFormField
|
from ipam.formfields import IPAddressFormField, IPNetworkFormField
|
||||||
from ipam.validators import MaxPrefixLengthValidator, MinPrefixLengthValidator, prefix_validator
|
from ipam.validators import MaxPrefixLengthValidator, MinPrefixLengthValidator, prefix_validator
|
||||||
from utilities.exceptions import AbortScript, AbortTransaction
|
from utilities.exceptions import AbortScript, AbortTransaction
|
||||||
@ -514,7 +514,7 @@ def run_script(data, job, request=None, commit=True, **kwargs):
|
|||||||
except AbortTransaction:
|
except AbortTransaction:
|
||||||
script.log_info("Database changes have been reverted automatically.")
|
script.log_info("Database changes have been reverted automatically.")
|
||||||
if request:
|
if request:
|
||||||
clear_webhooks.send(request)
|
clear_events.send(request)
|
||||||
job.data = ScriptOutputSerializer(script).data
|
job.data = ScriptOutputSerializer(script).data
|
||||||
job.terminate()
|
job.terminate()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -529,7 +529,7 @@ def run_script(data, job, request=None, commit=True, **kwargs):
|
|||||||
job.data = ScriptOutputSerializer(script).data
|
job.data = ScriptOutputSerializer(script).data
|
||||||
job.terminate(status=JobStatusChoices.STATUS_ERRORED, error=str(e))
|
job.terminate(status=JobStatusChoices.STATUS_ERRORED, error=str(e))
|
||||||
if request:
|
if request:
|
||||||
clear_webhooks.send(request)
|
clear_events.send(request)
|
||||||
|
|
||||||
logger.info(f"Script completed in {job.duration}")
|
logger.info(f"Script completed in {job.duration}")
|
||||||
|
|
||||||
|
@ -21,8 +21,8 @@ from .models import ConfigRevision, CustomField, ObjectChange, TaggedItem
|
|||||||
# Change logging/webhooks
|
# Change logging/webhooks
|
||||||
#
|
#
|
||||||
|
|
||||||
# Define a custom signal that can be sent to clear any queued webhooks
|
# Define a custom signal that can be sent to clear any queued events
|
||||||
clear_webhooks = Signal()
|
clear_events = Signal()
|
||||||
|
|
||||||
|
|
||||||
def is_same_object(instance, webhook_data, request_id):
|
def is_same_object(instance, webhook_data, request_id):
|
||||||
@ -125,13 +125,13 @@ def handle_deleted_object(sender, instance, **kwargs):
|
|||||||
model_deletes.labels(instance._meta.model_name).inc()
|
model_deletes.labels(instance._meta.model_name).inc()
|
||||||
|
|
||||||
|
|
||||||
@receiver(clear_webhooks)
|
@receiver(clear_events)
|
||||||
def clear_webhook_queue(sender, **kwargs):
|
def clear_events_queue(sender, **kwargs):
|
||||||
"""
|
"""
|
||||||
Delete any queued webhooks (e.g. because of an aborted bulk transaction)
|
Delete any queued events (e.g. because of an aborted bulk transaction)
|
||||||
"""
|
"""
|
||||||
logger = logging.getLogger('webhooks')
|
logger = logging.getLogger('events')
|
||||||
logger.info(f"Clearing {len(events_queue.get())} queued webhooks ({sender})")
|
logger.info(f"Clearing {len(events_queue.get())} queued events ({sender})")
|
||||||
events_queue.set([])
|
events_queue.set([])
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ from django.utils.safestring import mark_safe
|
|||||||
from django_tables2.export import TableExport
|
from django_tables2.export import TableExport
|
||||||
|
|
||||||
from extras.models import ExportTemplate
|
from extras.models import ExportTemplate
|
||||||
from extras.signals import clear_webhooks
|
from extras.signals import clear_events
|
||||||
from utilities.error_handlers import handle_protectederror
|
from utilities.error_handlers import handle_protectederror
|
||||||
from utilities.exceptions import AbortRequest, AbortTransaction, PermissionsViolation
|
from utilities.exceptions import AbortRequest, AbortTransaction, PermissionsViolation
|
||||||
from utilities.forms import BulkRenameForm, ConfirmationForm, restrict_form_fields
|
from utilities.forms import BulkRenameForm, ConfirmationForm, restrict_form_fields
|
||||||
@ -279,7 +279,7 @@ class BulkCreateView(GetReturnURLMixin, BaseMultiObjectView):
|
|||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.debug("Form validation failed")
|
logger.debug("Form validation failed")
|
||||||
@ -470,12 +470,12 @@ class BulkImportView(GetReturnURLMixin, BaseMultiObjectView):
|
|||||||
return redirect(results_url)
|
return redirect(results_url)
|
||||||
|
|
||||||
except (AbortTransaction, ValidationError):
|
except (AbortTransaction, ValidationError):
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.debug("Form validation failed")
|
logger.debug("Form validation failed")
|
||||||
@ -628,12 +628,12 @@ class BulkEditView(GetReturnURLMixin, BaseMultiObjectView):
|
|||||||
|
|
||||||
except ValidationError as e:
|
except ValidationError as e:
|
||||||
messages.error(self.request, ", ".join(e.messages))
|
messages.error(self.request, ", ".join(e.messages))
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.debug("Form validation failed")
|
logger.debug("Form validation failed")
|
||||||
@ -729,7 +729,7 @@ class BulkRenameView(GetReturnURLMixin, BaseMultiObjectView):
|
|||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
form = self.form(initial={'pk': request.POST.getlist('pk')})
|
form = self.form(initial={'pk': request.POST.getlist('pk')})
|
||||||
@ -923,12 +923,12 @@ class BulkComponentCreateView(GetReturnURLMixin, BaseMultiObjectView):
|
|||||||
raise PermissionsViolation
|
raise PermissionsViolation
|
||||||
|
|
||||||
except IntegrityError:
|
except IntegrityError:
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
if not form.errors:
|
if not form.errors:
|
||||||
msg = "Added {} {} to {} {}.".format(
|
msg = "Added {} {} to {} {}.".format(
|
||||||
|
@ -11,7 +11,7 @@ from django.urls import reverse
|
|||||||
from django.utils.html import escape
|
from django.utils.html import escape
|
||||||
from django.utils.safestring import mark_safe
|
from django.utils.safestring import mark_safe
|
||||||
|
|
||||||
from extras.signals import clear_webhooks
|
from extras.signals import clear_events
|
||||||
from utilities.error_handlers import handle_protectederror
|
from utilities.error_handlers import handle_protectederror
|
||||||
from utilities.exceptions import AbortRequest, PermissionsViolation
|
from utilities.exceptions import AbortRequest, PermissionsViolation
|
||||||
from utilities.forms import ConfirmationForm, restrict_form_fields
|
from utilities.forms import ConfirmationForm, restrict_form_fields
|
||||||
@ -300,7 +300,7 @@ class ObjectEditView(GetReturnURLMixin, BaseObjectView):
|
|||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.debug("Form validation failed")
|
logger.debug("Form validation failed")
|
||||||
@ -528,7 +528,7 @@ class ComponentCreateView(GetReturnURLMixin, BaseObjectView):
|
|||||||
except (AbortRequest, PermissionsViolation) as e:
|
except (AbortRequest, PermissionsViolation) as e:
|
||||||
logger.debug(e.message)
|
logger.debug(e.message)
|
||||||
form.add_error(None, e.message)
|
form.add_error(None, e.message)
|
||||||
clear_webhooks.send(sender=self)
|
clear_events.send(sender=self)
|
||||||
|
|
||||||
return render(request, self.template_name, {
|
return render(request, self.template_name, {
|
||||||
'object': instance,
|
'object': instance,
|
||||||
|
Loading…
Reference in New Issue
Block a user