I have the following workflow (take geometry, create orbiting camera, render image sequence, create movie from sequence)
My renderScene step depends on output from both step “orbitCamera” and “blenderScene” but when the renderScene step runs, the output from orbitCamera has already been cleared.
I know there are flags in cwl-runner to keep all the tmp files and such but I was hoping that the dependency should tell cwl-runner to keep things around or have I misunderstood the nature of input/output dependencies in CWL ?
#!/usr/bin/env cwl-runner
cwlVersion: v1.0
class: Workflow
inputs:
- id: ttcamScript
type: File
- id: sceneGenScript
type: File
- id: inputAlembicMeshWF
type: File
- id: alembicCameraWF
type: string
outputs:
- id: animation
type: File
outputBinding:
glob: "*.mp4"
steps:
orbitCamera:
run : create-orbiting-camera.cwl
in:
blenderScript: ttcamScript
inputAlembicMesh: inputAlembicMeshWF
alembicCamera: alembicCameraWF
out: [outputAlembicCamera]
blenderScene:
run : create-render-scene-file.cwl
in:
blenderScript: sceneGenScript
inputAlembicMesh: inputAlembicMeshWF
alembicCamera: orbitCamera/outputAlembicCamera
out: [outputBlenderScene]
renderScene:
run : render-scene-file.cwl
in:
blenderScene: blenderScene/outputBlenderScene
alembicCamera: orbitCamera/outputAlembicCamera
out: [renderedImages]