common-workflow-language / common-workflow-language/cwltool

missing outputBindings when not using cwl.output.json should produce a better error message

Open
#1,479 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
376
Forks
255
Avg merge
2d 7h
Merged PRs (30d)
12

Description

Requested by Michael R. Crusoe, this issue concerns the error messages which are not helpful for the user. : )

## Code
```cwl
#!/usr/bin/env cwl-runner

cwlVersion: v1.0
class: CommandLineTool
baseCommand: bet

inputs:
rao:
type: File
inputBinding: {position: 1}
out:
type: string
inputBinding: {position: 2}
flagmi:
type: boolean
inputBinding:
prefix: -m
position: 3
outputs:
- id: bet_output_mask
type: File
format: edam:format_3989
- id: bet_output_mask1
type: File
format: edam:format_3989

$namespaces:
edam: http://edamontology.org/
$schemas:
- http://edamontology.org/EDAM_1.18.owl
```

## Full Traceback
```
miniconda3/envs/onto38/bin/cwl-runner 3.1.20210628163208
INFO Resolved 'bet2.cwl' to 'file:///home/ssaneei/Documents/cwl/example/bet/bet2.cwl'
INFO [job bet2.cwl] /tmp/jzxtul5y$ bet \
/tmp/_76g2rw_/stg73219855-07e1-4776-ac68-a3d683d43839/STRUCT.nii.gz \
STRUCT_brain.nii.gz \
-m
/usr/local/fsl/bin/bet: line 157: /bin/remove_ext: No such file or directory
/usr/local/fsl/bin/bet failed during command:/tmp/_76g2rw_/stg73219855-07e1-4776-ac68-a3d683d43839/STRUCT.nii.gz STRUCT_brain.nii.gz -m
ERROR [job bet2.cwl] Job error:
Error validating output record. * the `bet_output_mask` field is not valid because
is not a dict
* the `bet_output_mask1` field is not valid because
is not a dict
in {
"bet_output_mask": null,
"bet_output_mask1": null
}
WARNING [job bet2.cwl] completed permanentFail
{}
WARNING Final process status is permanentFail
```

## Environment
* cwltool version: 3.1.20210628163208

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.