From 904c456ae87a627e68e97cba7c5dfec7973fa949 Mon Sep 17 00:00:00 2001 From: Charlotte Hausman <chausman@nrao.edu> Date: Fri, 5 Feb 2021 11:57:02 -0500 Subject: [PATCH] SWS-6: workflows now start correctly with correct arguments --- services/capability/src/capability/server.py | 2 +- shared/workspaces/workspaces/capability/helpers.py | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/services/capability/src/capability/server.py b/services/capability/src/capability/server.py index 518baa3b1..fd99f5876 100644 --- a/services/capability/src/capability/server.py +++ b/services/capability/src/capability/server.py @@ -51,7 +51,7 @@ class CapabilityRestService: def create(self): # create a capability request for this ... request req = self.request.json_body - request = self.request.capabilities.create_request(req["capability"]) + request = self.request.capabilities.create_request(req["capability"], req["args"]) return request @view_config( diff --git a/shared/workspaces/workspaces/capability/helpers.py b/shared/workspaces/workspaces/capability/helpers.py index 33aa82189..13b42bc83 100644 --- a/shared/workspaces/workspaces/capability/helpers.py +++ b/shared/workspaces/workspaces/capability/helpers.py @@ -114,12 +114,15 @@ class CapabilitySequence(CapabilitySequenceIF): class PrepareAndRunWorkflow(CapabilityStep): def execute(self, engine: CapabilityEngineIF, execution: CapabilityExecutionIF): workflow_name = self.step_value - workflow_args = self.step_args + parameters = execution.capability_request.parameters # FIXME: Add support for files files = [] - if workflow_args is not None: - workflow_args = json.loads(workflow_args) - engine.submit_workflow_request(workflow_name, workflow_args, files) + if parameters is not None: + # convert to json string because json cares about single vs. double quotes. + # DO NOT TAKE THIS OUT! Python will yell at you. + parameters = json.dumps(parameters) + workflow_args = json.loads(parameters) + engine.submit_workflow_request(execution.id, workflow_name, workflow_args, files) class AwaitQa(CapabilityStep): -- GitLab