mirror of
https://github.com/ansible/awx.git
synced 2026-05-24 00:57:48 -02:30
Clean up RBAC code
This commit is contained in:
@@ -3455,9 +3455,7 @@ class WorkflowApprovalTemplateSerializer(UnifiedJobTemplateSerializer):
|
|||||||
if 'last_job' in res:
|
if 'last_job' in res:
|
||||||
del res['last_job']
|
del res['last_job']
|
||||||
|
|
||||||
res.update(dict(
|
res.update(dict(jobs = self.reverse('api:workflow_approval_template_jobs_list', kwargs={'pk': obj.pk}),))
|
||||||
jobs = self.reverse('api:workflow_approval_template_jobs_list', kwargs={'pk': obj.pk}),
|
|
||||||
))
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -4453,7 +4453,6 @@ class WorkflowApprovalApprove(RetrieveAPIView):
|
|||||||
model = models.WorkflowApproval
|
model = models.WorkflowApproval
|
||||||
serializer_class = serializers.WorkflowApprovalViewSerializer
|
serializer_class = serializers.WorkflowApprovalViewSerializer
|
||||||
|
|
||||||
# &&&&&& Changed per the PR review, notes/questions in additional comments...
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
request.user.can_access(models.WorkflowApproval, 'approve_or_deny', obj)
|
request.user.can_access(models.WorkflowApproval, 'approve_or_deny', obj)
|
||||||
@@ -4467,7 +4466,6 @@ class WorkflowApprovalDeny(RetrieveAPIView):
|
|||||||
model = models.WorkflowApproval
|
model = models.WorkflowApproval
|
||||||
serializer_class = serializers.WorkflowApprovalViewSerializer
|
serializer_class = serializers.WorkflowApprovalViewSerializer
|
||||||
|
|
||||||
# &&&&&& Changed per the PR review, notes/questions in additional comments...
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
request.user.can_access(models.WorkflowApproval, 'approve_or_deny', obj)
|
request.user.can_access(models.WorkflowApproval, 'approve_or_deny', obj)
|
||||||
|
|||||||
@@ -482,10 +482,6 @@ class TaskManager():
|
|||||||
found_acceptable_queue = False
|
found_acceptable_queue = False
|
||||||
idle_instance_that_fits = None
|
idle_instance_that_fits = None
|
||||||
if isinstance(task, WorkflowJob):
|
if isinstance(task, WorkflowJob):
|
||||||
# &&&&&& Timeout implementation (pseudo-code)
|
|
||||||
# if (tz_now() - task.created).seconds > the_timeout_in_seconds:
|
|
||||||
# logger.error('meaning log message')
|
|
||||||
# mark it as status failed and set a reasonable `job_explanation` value
|
|
||||||
if task.unified_job_template_id in running_workflow_templates:
|
if task.unified_job_template_id in running_workflow_templates:
|
||||||
if not task.allow_simultaneous:
|
if not task.allow_simultaneous:
|
||||||
logger.debug("{} is blocked from running, workflow already running".format(task.log_format))
|
logger.debug("{} is blocked from running, workflow already running".format(task.log_format))
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ from awx.main.models import (
|
|||||||
JobTemplate, OAuth2AccessToken, Organization, Project, ProjectUpdateEvent,
|
JobTemplate, OAuth2AccessToken, Organization, Project, ProjectUpdateEvent,
|
||||||
Role, SystemJob, SystemJobEvent, SystemJobTemplate, UnifiedJob,
|
Role, SystemJob, SystemJobEvent, SystemJobTemplate, UnifiedJob,
|
||||||
UnifiedJobTemplate, User, UserSessionMembership, WorkflowJobTemplateNode,
|
UnifiedJobTemplate, User, UserSessionMembership, WorkflowJobTemplateNode,
|
||||||
WorkflowApprovalTemplate, ROLE_SINGLETON_SYSTEM_ADMINISTRATOR
|
WorkflowApproval, WorkflowApprovalTemplate, ROLE_SINGLETON_SYSTEM_ADMINISTRATOR
|
||||||
)
|
)
|
||||||
from awx.main.constants import CENSOR_VALUE
|
from awx.main.constants import CENSOR_VALUE
|
||||||
from awx.main.utils import model_instance_diff, model_to_dict, camelcase_to_underscore, get_current_apps
|
from awx.main.utils import model_instance_diff, model_to_dict, camelcase_to_underscore, get_current_apps
|
||||||
@@ -505,10 +505,6 @@ def activity_stream_update(sender, instance, **kwargs):
|
|||||||
else:
|
else:
|
||||||
activity_entry.setting = conf_to_dict(instance)
|
activity_entry.setting = conf_to_dict(instance)
|
||||||
activity_entry.save()
|
activity_entry.save()
|
||||||
# &&&&&&
|
|
||||||
# for approvals in kwargs['pk_set']:
|
|
||||||
# if isinstance(WorkflowApprovalTemplate) or isinstance(kwargs['model'].objects.filter(id=approvals), WorkflowApprovalTemplate):
|
|
||||||
# continue
|
|
||||||
|
|
||||||
|
|
||||||
def activity_stream_delete(sender, instance, **kwargs):
|
def activity_stream_delete(sender, instance, **kwargs):
|
||||||
@@ -650,7 +646,6 @@ def delete_approval_templates(sender, instance, **kwargs):
|
|||||||
instance.unified_job_template.delete()
|
instance.unified_job_template.delete()
|
||||||
|
|
||||||
|
|
||||||
# When setting UJT to anything other than "is approval node" - delete this comment!
|
|
||||||
@receiver(pre_save, sender=WorkflowJobTemplateNode)
|
@receiver(pre_save, sender=WorkflowJobTemplateNode)
|
||||||
def delete_approval_node_type_change(sender, instance, **kwargs):
|
def delete_approval_node_type_change(sender, instance, **kwargs):
|
||||||
try:
|
try:
|
||||||
@@ -663,7 +658,6 @@ def delete_approval_node_type_change(sender, instance, **kwargs):
|
|||||||
old.unified_job_template.delete()
|
old.unified_job_template.delete()
|
||||||
|
|
||||||
|
|
||||||
# &&&&&& New stuff to test!
|
|
||||||
@receiver(post_delete, sender=WorkflowApprovalTemplate)
|
@receiver(post_delete, sender=WorkflowApprovalTemplate)
|
||||||
def deny_orphaned_approvals(sender, instance, **kwargs):
|
def deny_orphaned_approvals(sender, instance, **kwargs):
|
||||||
for approval in WorkflowApproval.objects.filter(workflow_approval_template=instance, status='pending'):
|
for approval in WorkflowApproval.objects.filter(workflow_approval_template=instance, status='pending'):
|
||||||
|
|||||||
Reference in New Issue
Block a user