common-workflow-language / common-workflow-language/cwltool
CWLProv: no trace of secondaryFiles for workflow activity
- Dominant language
- Python
- Stars
- 376
- Forks
- 255
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 12
Description
See [grepsort-run-1](https://github.com/ResearchObject/runcrate/tree/64397c770c565ce7ce747a427a98a267828c61a4/tests/data/grepsort-run-1) (generated with an older cwltool version, but I've verified the problem is still present in version **3.1.20230624081518**). The problem is that a `cwlprov:SecondaryFile` record is generated only for the activity corresponding to the relevant tool run (`greptool.cwl`), but not for the activity corresponding to the workflow run. In [runcrate](https://github.com/ResearchObject/runcrate), the result is that the workflow action ends up being assigned a single file as input instead of a `Collection` of the single file + the secondary file, so after parameter conversion is done [this hack](https://github.com/ResearchObject/runcrate/blob/64397c770c565ce7ce747a427a98a267828c61a4/src/runcrate/convert.py#L675) is run to replace it with the `Collection` generated for the tool run. The hack, however, does not work if different landing directories are used for different activities (see [this comment](https://github.com/ResearchObject/runcrate/pull/46#issuecomment-1642258456)).
Contributor guide
Assessment
This issue has not been assessed yet.