On Fri, Feb 15, 2013 at 4:32 PM, Greg Von Kuster firstname.lastname@example.org wrote:
Usecase: Tool comes with a simple datafile (e.g. defining a search motif, say motif.dat) which is used by a script (say motif.py) via a normal Galaxy tool XML file (say motif.xml).
Perhaps I can just put my data file next to the script and XML file, in which case it is easy for the script to locate? But I assumed that Galaxy best practice would be to use the tool-data folder somehow...
Is there a documented example I should be reading? In this use case (without any explicit XML markup), can I assume/have the motif.dat file be installed in the same folder next to the motif.py script and tool defining motif.xml file?
This scenario uses a tool dependency that is included in the repository which is discussed in the following section of the tool shed wiki. Using this approach a tool config (Cheetah template) would have to be configured with the proper <requirement> tag set and an associated <command> tag set that would ultimately have the path to the motif.py script and motif.dat file defined in the environment. Of course, this assumes the motify.py script is not the tool executable itself.
Actually for the example I am working on, the motif.py script would be the tool executable, called from motif.xml like this:
<command interpreter="python">motif.py $fasta_file $tabular_file</command>
i.e. A completely self contained Galaxy tool consisting of four files:
motif.xml - Galaxy tool definition motif.txt - README file motif.py - Python script which is the tool motif.dat - Data file used by the Python script
I am hoping that no further XML configuration files are needed in order to handle the data file.