I currently have a simple scatter workflow with 4 cwl actors steps. I pass to this scatter workflow an input with several thousand entries in order to run the entire workflow on each entry. Step 3 is expected to produce a pred.tab file that is then passed to the final CWL actor. Currently, it is not a guarantee that the software called by step 3’s cwl actor will run to completion. If it doesn’t, no pred.tab file is created which is expected for step 4. How do I configure the workflow so that if the “pred.tab” file in step 3 isn’t created that step 4 doesn’t crash the entire scatter workflow? I would simply like it to skip this pass through the workflow.
In your case I would add the likely exit codes to the
succesCodes list and mark all the outputs as being optional by appending a
? to solo type declarations (
type: File?) or inserting
null into the list of types in the more complicated situation (
type: [ File, Directory ] -›
type: [ File, Directory, 'null' ].