From fb8d7e5d9c336c4de6c369e452f8bae5fcb3c33d Mon Sep 17 00:00:00 2001 From: Matthew Jones Date: Tue, 18 Nov 2014 11:38:24 -0500 Subject: [PATCH] Fix up direct launching of system jobs --- awx/api/views.py | 9 ++++++++- awx/main/tasks.py | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/awx/api/views.py b/awx/api/views.py index d575df910c..683b7f9f93 100644 --- a/awx/api/views.py +++ b/awx/api/views.py @@ -1755,7 +1755,14 @@ class SystemJobTemplateLaunch(GenericAPIView): if not request.user.can_access(self.model, 'start', obj): raise PermissionDenied() new_job = obj.create_unified_job() - result = new_job.signal_start() + if 'extra_vars' in request.DATA: + try: + extra_vars = json.loads(request.DATA['extra_vars']) + except Exception: + extra_vars = {} + else: + extra_vars = {} + result = new_job.signal_start(**extra_vars) data = dict(system_job=new_job.id) return Response(data, status=status.HTTP_202_ACCEPTED) diff --git a/awx/main/tasks.py b/awx/main/tasks.py index f9b09ea8e6..fff1209593 100644 --- a/awx/main/tasks.py +++ b/awx/main/tasks.py @@ -1168,7 +1168,7 @@ class RunSystemJob(BaseTask): if 'inventory_updates' in json_vars and json_vars['inventory_updates']: args.extend(['--inventory-updates']) except Exception, e: - pass + logger.error("Failed to parse system job: " + str(e)) return args def build_cwd(self, instance, **kwargs):