Merge pull request #4515 from AlanCoding/relaunch_rbac

Custom PermissionDenied error for Workflow Job relaunch
This commit is contained in:
Alan Rominger
2017-01-06 16:04:13 -05:00
committed by GitHub
3 changed files with 74 additions and 20 deletions

View File

@@ -2957,6 +2957,13 @@ class WorkflowJobRelaunch(WorkflowsEnforcementMixin, GenericAPIView):
serializer_class = EmptySerializer
is_job_start = True
def check_object_permissions(self, request, obj):
if request.method == 'POST' and obj:
relaunch_perm, messages = request.user.can_access_with_errors(self.model, 'start', obj)
if not relaunch_perm and 'workflow_job_template' in messages:
self.permission_denied(request, message=messages['workflow_job_template'])
return super(WorkflowJobRelaunch, self).check_object_permissions(request, obj)
def get(self, request, *args, **kwargs):
return Response({})