Hi, I am running in the following issue. I have a list of directory that I would like to modify as input.
To do so I add them in the InputWorkDirRequirement but for some reason it only works for a single directory.
This is my cwl workflow
class: CommandLineTool
cwlVersion: v1.1
id: test_multiple_dir_input
baseCommand:
- /bin/bash
- script.sh
inputs:
- id: msin
type: ‘Directory[]’
outputs:
- id: std_out
type: File
outputBinding:
glob: test_multiple_dir_input.log
label: test_multiple_dir_input
requirements:
- class: DockerRequirement
dockerPull: 'lofareosc/prefactor:HBAcalibrator'
- class: InitialWorkDirRequirement
listing:
- entry: $(inputs.msin)
writable: true
- entryname: script.sh
entry: |
#!/bin/bash
ls -lR
rm test1/dude.txt
- class: InlineJavascriptRequirement
stdout: test_multiple_dir_input.log
and this is my input file
{
"msin": [{"class": "Directory", "path":"test1"}, {"class": "Directory", "path":"test2"}]
}
the directory listing is the following:
[15:10:07] mmancini:multiple_folders $ ls -lR test1 test2
test1:
total 0
-rw-rw-r-- 1 mmancini mmancini 0 Feb 22 15:10 dude.txt
test2:
total 0
This is obviously a minimum snippet to recreate the problem.
To execute the workflow I am using cwltool with version 3.0.20210124104916