-
Notifications
You must be signed in to change notification settings - Fork 97
Description
Although there are some rough edges with installing workflows from the Tool Shed (e.g. http://dev.list.galaxyproject.org/Installing-workflows-from-the-Tool-Shed-is-very-confusing-tc4666888.html ) the ability for the workflow author to include a repository_dependencies.xml file ought to help with ensuring the workflow dependencies can be automatically installed by a Galaxy Administrator.
In principle, by parsing *.ga file (or set of files if you wanted to publish several workflows in a single ToolShed repository), the repository_dependencies.xml file could be auto generated - and this might be a useful feature for planemo.
(Alternatively this kind of logic might be better in the Tool Shed code, or in Galaxy's *.ga import code?).
For example with https://github.com/peterjc/galaxy_blast/tree/master/workflows/blast_top_hit_species I created the repository_dependencies.xml by hand, turning these lines in the *.ga file:
"tool_id": "toolshed.g2.bx.psu.edu/repos/peterjc/sample_seqs/sample_seqs/0.2.1",
"tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastx_wrapper/0.1.01",
"tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/fasta_to_tabular/fasta2tab/1.1.0",
"tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/unique/bg_uniq/0.3",
into:
<repository owner="devteam" name="ncbi_blast_plus" />
<repository owner="devteam" name="fasta_to_tabular" />
<repository owner="peterjc" name="sample_seqs" />
<repository owner="bgruening" name="unique" />
Upon upload to the Tool Shed as https://toolshed.g2.bx.psu.edu/view/peterjc/blast_top_hit_species these were filled in to point at the latest tool revisions (which at the time would have been the right version numbers):
<repository changeset_revision="2fe07f50a41e" name="ncbi_blast_plus" owner="devteam" toolshed="https://toolshed.g2.bx.psu.edu" />
<repository changeset_revision="9d189d08f2ad" name="fasta_to_tabular" owner="devteam" toolshed="https://toolshed.g2.bx.psu.edu" />
<repository changeset_revision="02c13ef1a669" name="sample_seqs" owner="peterjc" toolshed="https://toolshed.g2.bx.psu.edu" />
<repository changeset_revision="7ce75adb93be" name="unique" owner="bgruening" toolshed="https://toolshed.g2.bx.psu.edu" />
Note that a single workflow may contain tools installed from multiple Tool Shed repositories, but at the time of writing the repository_dependencies.xml file can only be used for dependencies within the same Tool Shed. Assuming the dependencies were from the same Tool Shed, then the revisions could be examined for suitable changeset_revision entries providing the desired version string of the tool.