mirror of
https://github.com/ansible/awx.git
synced 2026-05-09 02:17:37 -02:30
Moved m2m signal handler out to our common signals.py
This commit is contained in:
@@ -7,7 +7,6 @@ import logging
|
|||||||
# Django
|
# Django
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
from django.db.models.signals import pre_save, post_save, pre_delete, post_delete, m2m_changed
|
|
||||||
|
|
||||||
# AWX
|
# AWX
|
||||||
from awx.main.models.base import * # noqa
|
from awx.main.models.base import * # noqa
|
||||||
@@ -17,10 +16,6 @@ __all__ = ['Role', 'RolePermission', 'Resource', 'RoleHierarchy', 'ResourceHiera
|
|||||||
logger = logging.getLogger('awx.main.models.rbac')
|
logger = logging.getLogger('awx.main.models.rbac')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def rebuild_role_hierarchy_cache(sender, **kwargs):
|
|
||||||
kwargs['instance'].rebuild_role_hierarchy_cache()
|
|
||||||
|
|
||||||
class Role(CommonModelNameNotUnique):
|
class Role(CommonModelNameNotUnique):
|
||||||
'''
|
'''
|
||||||
Role model
|
Role model
|
||||||
@@ -80,9 +75,6 @@ class Role(CommonModelNameNotUnique):
|
|||||||
permission.save()
|
permission.save()
|
||||||
|
|
||||||
|
|
||||||
m2m_changed.connect(rebuild_role_hierarchy_cache, Role.parents.through)
|
|
||||||
|
|
||||||
|
|
||||||
class RoleHierarchy(CreatedModifiedModel):
|
class RoleHierarchy(CreatedModifiedModel):
|
||||||
'''
|
'''
|
||||||
Stores a flattened relation map of all roles in the system for easy joining
|
Stores a flattened relation map of all roles in the system for easy joining
|
||||||
|
|||||||
@@ -115,6 +115,9 @@ def store_initial_active_state(sender, **kwargs):
|
|||||||
else:
|
else:
|
||||||
instance._saved_active_state = True
|
instance._saved_active_state = True
|
||||||
|
|
||||||
|
def rebuild_role_hierarchy_cache(sender, **kwargs):
|
||||||
|
kwargs['instance'].rebuild_role_hierarchy_cache()
|
||||||
|
|
||||||
pre_save.connect(store_initial_active_state, sender=Host)
|
pre_save.connect(store_initial_active_state, sender=Host)
|
||||||
post_save.connect(emit_update_inventory_on_created_or_deleted, sender=Host)
|
post_save.connect(emit_update_inventory_on_created_or_deleted, sender=Host)
|
||||||
post_delete.connect(emit_update_inventory_on_created_or_deleted, sender=Host)
|
post_delete.connect(emit_update_inventory_on_created_or_deleted, sender=Host)
|
||||||
@@ -133,6 +136,8 @@ post_save.connect(emit_update_inventory_on_created_or_deleted, sender=Job)
|
|||||||
post_delete.connect(emit_update_inventory_on_created_or_deleted, sender=Job)
|
post_delete.connect(emit_update_inventory_on_created_or_deleted, sender=Job)
|
||||||
post_save.connect(emit_job_event_detail, sender=JobEvent)
|
post_save.connect(emit_job_event_detail, sender=JobEvent)
|
||||||
post_save.connect(emit_ad_hoc_command_event_detail, sender=AdHocCommandEvent)
|
post_save.connect(emit_ad_hoc_command_event_detail, sender=AdHocCommandEvent)
|
||||||
|
m2m_changed.connect(rebuild_role_hierarchy_cache, Role.parents.through)
|
||||||
|
|
||||||
|
|
||||||
# Migrate hosts, groups to parent group(s) whenever a group is deleted or
|
# Migrate hosts, groups to parent group(s) whenever a group is deleted or
|
||||||
# marked as inactive.
|
# marked as inactive.
|
||||||
|
|||||||
Reference in New Issue
Block a user