miniwdl icon indicating copy to clipboard operation
miniwdl copied to clipboard

Output uploading

Open kislyuk opened this issue 4 years ago • 3 comments

Sorry if I'm missing something obvious.

I'd like to be able to specify a destination for outputs to be sent to (ideally even as soon as they appear among the task outputs):

task foo {
  output {
    File bar = "path/to/bar.bam"
  }
}
miniwdl run foo.wdl --dest-dir s3://my-bucket/results-for-foo/

should result in bar.bam appearing at s3://my-bucket/results-for-foo/path/to/bar.bam.

This should presumably use the same interface as the downloader plugins.

kislyuk avatar Jan 27 '20 18:01 kislyuk

Alternative naming suggestion for the option: --remote-output-dir/--remote-out

kislyuk avatar Jan 27 '20 19:01 kislyuk

This is a stopgap solution which should unblock the requirement until there's something more built-in: https://gist.github.com/mlin/55bafb76c784164651687336cd15e162

mlin avatar Jan 27 '20 19:01 mlin

Further to the previous example upload_output_files.sh which shows how to upload all the output files on workflow completion,

The new example plugin s3_progressive_upload de-risks how to upload intermediate results as tasks complete, and generate a final workflow output JSON referring to the uploaded S3 objects. Of course integration work will still be needed for production use.

mlin avatar Apr 03 '20 09:04 mlin