From fb5288a2601d6b4d0b8c52b4293a8ccc745b4425 Mon Sep 17 00:00:00 2001 From: Manabu Ishii Date: Thu, 11 Nov 2021 12:13:09 +0900 Subject: [PATCH] WIP fix #1330 --- cwltool/process.py | 4 ++++ cwltool/workflow.py | 9 +++++---- cwltool/workflow_job.py | 2 ++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/cwltool/process.py b/cwltool/process.py index 9abbfd7048..4d9878abf8 100644 --- a/cwltool/process.py +++ b/cwltool/process.py @@ -774,6 +774,10 @@ def _init_job( ) job = copy.deepcopy(joborder) + if len(job.keys()) > 0: + for jo in joborder: + field = shortname(jo) + job[field] = joborder[jo] make_fs_access = getdefault(runtime_context.make_fs_access, StdFsAccess) fs_access = make_fs_access(runtime_context.basedir) diff --git a/cwltool/workflow.py b/cwltool/workflow.py index 986db5b99a..e4c3cade42 100644 --- a/cwltool/workflow.py +++ b/cwltool/workflow.py @@ -448,10 +448,11 @@ def job( ) step_input = {} - for inp in self.tool["inputs"]: - field = shortname(inp["id"]) - if not inp.get("not_connected"): - step_input[field] = job_order[inp["id"]] + for inp in job_order: + field = shortname(inp) + step_input[field] = job_order[inp] + # if not inp.get("not_connected"): + # step_input[field] = job_order[field] try: yield from self.embedded_tool.job( diff --git a/cwltool/workflow_job.py b/cwltool/workflow_job.py index 26af81f58f..11ddd5257c 100644 --- a/cwltool/workflow_job.py +++ b/cwltool/workflow_job.py @@ -386,6 +386,8 @@ def object_from_state( incomplete: bool = False, ) -> Optional[CWLObjectType]: inputobj = {} # type: CWLObjectType + for s in state.keys(): + inputobj[s] = state[s].value for inp in params: iid = original_id = cast(str, inp["id"]) if frag_only: