From 012511e4f0ff4d94b0e01c0e53e5c867d1fe6fbe Mon Sep 17 00:00:00 2001 From: AlanCoding Date: Mon, 26 Nov 2018 10:54:19 -0500 Subject: [PATCH] prohibit relaunching sliced jobs with changed count --- awx/api/views/__init__.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/awx/api/views/__init__.py b/awx/api/views/__init__.py index 87140b02b1..a1279a9119 100644 --- a/awx/api/views/__init__.py +++ b/awx/api/views/__init__.py @@ -3154,8 +3154,11 @@ class WorkflowJobRelaunch(WorkflowsEnforcementMixin, GenericAPIView): def post(self, request, *args, **kwargs): obj = self.get_object() - if obj.is_sliced_job and not obj.job_template_id: - raise ParseError(_('Cannot relaunch slice workflow job orphaned from job template.')) + if obj.is_sliced_job: + if not obj.job_template_id: + raise ParseError(_('Cannot relaunch slice workflow job orphaned from job template.')) + elif obj.job_template.job_slice_count != obj.workflow_nodes.count(): + raise ParseError(_('Cannot relaunch sliced workflow job after slice count has changed.')) new_workflow_job = obj.create_relaunch_workflow_job() new_workflow_job.signal_start()