Hello galaxy dev,
I have done some work on enabling multiple input files for multiple tool parameters in a workflow. This could come in handy when running multiple paired end data files for RNA Seq through a pipeline (I know this has been discussed on a few different threads but I couldn't find any when writing this up).
The changes cause the workflow controller to step through the input data in synchronized fashion going down the list (of selected inputs). When running a workflow with multiple, multiple inputs the default ordering from the history can be problematic so I also did a little work on a new display/interaction method that I called "on_deck." If you set the tool xml config to have parameter tag display="on_deck" then it will enable this interaction method.
e.g. from the bowtie wrapper:
<when value="paired">
<param name="pInput1" type="data" format="fastqsanger,fastqillumina,fastqsolexa" label="Forward FASTQ file" help="Must have ASCII encoded quality scores" display="on_deck"/>
<param name="pInput2" type="data" format="fastqsanger,fastqillumina,fastqsolexa" label="Reverse FASTQ file" help="File format must match the Forward FASTQ file" display="on_deck">
The changes to run.mako seem a little hacked in to me (I am still getting a handle on the mako format). I wasn't sure where to stick the javascript that is in there. It only lets you go forward if the number of inputs, for all multiple toggled inputs, is equal.
Hope this helps somebody.
Andrew Warren