WDL structs are not handled
dinithiW opened this issue ยท 3 comments
Currently, WDL specific custom compound type struct
is not translated by the translator (https://github.com/openwdl/wdl/blob/main/versions/1.1/SPEC.md#custom-types-structs)
In WDL documents, after the definition of these structs, they can be referenced in the input, output and command sections. A workflow using struct
type is shown in the this link. https://github.com/broadinstitute/warp/blob/b3f5c898d1b535aaca8dc9e9f4223697a7a0a9a9/pipelines/skylab/build_indices/BuildIndices.wdl#L3
Referencing in input section: https://github.com/broadinstitute/warp/blob/b3f5c898d1b535aaca8dc9e9f4223697a7a0a9a9/pipelines/skylab/build_indices/BuildIndices.wdl#L52
Referencing in output section: https://github.com/broadinstitute/warp/blob/b3f5c898d1b535aaca8dc9e9f4223697a7a0a9a9/pipelines/skylab/build_indices/BuildIndices.wdl#L126
Referencing in command section: https://github.com/broadinstitute/warp/blob/b3f5c898d1b535aaca8dc9e9f4223697a7a0a9a9/pipelines/skylab/build_indices/BuildIndices.wdl#L68
I cloned the repository and read the README and parts of the code today. Then decided to choose a random WDL from the warp repository, and chose exactly the build_indices
mentioned above. Had the error when trying to translate it, and searched in the issues, finding this one ๐ฌ
Any pointers on how this could be fixed? Would it be creating InputRecordSchema
's and OutputRecordSchema
s?
Thanks!
Bruno
I cloned the repository and read the README and parts of the code today. Then decided to choose a random WDL from the warp repository, and chose exactly the
build_indices
mentioned above. Had the error when trying to translate it, and searched in the issues, finding this one ๐ฌ
๐๐
Any pointers on how this could be fixed? Would it be creating
InputRecordSchema
's andOutputRecordSchema
s?
That is what I would do. Feel free to focus on solving the issue of how WDL struts are used in just one of the examples, versus making the perfect solution all at once.
Thanks!
Bruno
Thank you!
For CWL use https://www.commonwl.org/v1.2/CommandLineTool.html#CommandInputRecordSchema , https://www.commonwl.org/v1.2/CommandLineTool.html#CommandOutputRecordSchema for CommandLineTools and https://www.commonwl.org/v1.2/Workflow.html#InputRecordSchema , https://www.commonwl.org/v1.2/Workflow.html#OutputRecordSchema for workflows
Conversion of one of the examples:
https://github.com/broadinstitute/warp/blob/b3f5c898d1b535aaca8dc9e9f4223697a7a0a9a9/pipelines/skylab/build_indices/BuildIndices.wdl#L3
type:
type: record
name: references
items:
- id: genome_fa
type: File
- id: annotation_gtf
type: File