Hello Sebastian,

Sorry I haven't had a chance to update the tool shed wiki with this 
information.  I'm not quite done with the implementation (although I'm very 
close), so I've held off on the documentation for now.  However, here are the 
highlights:

My goal is for most of the tool shed repositories ( 90% or more ) to require 
inclusion of only an xml file that provides information for installing and 
building the tool dependencies.  In these cases, the Galaxy framework will 
handle the installation, whether it's via fabric or something else.  This xml 
file must be named tool_dependencies.xml.  Here is what this file looks like 
for the emboss_5 tool shed repository (I have not yet uploaded this file to the 
repository in the main Galaxy tool shed, so you won't find it there at least 
for a short wile longer).

=======================
<?xml version="1.0"?>
<tool_dependency>
    <package name="emboss" version="5.0.0">
        <fabfile>
            <method name="install_and_build_package">
                <param 
name="download_url">ftp://emboss.open-bio.org/pub/EMBOSS/old/5.0.0/EMBOSS-5.0.0.tar.gz</param>
                <param name="build_commands">
                    <command>./configure --without-x 
--prefix=$INSTALL_DIR</command>
                    <command>make</command>
                    <command>make install</command>
                </param>
            </method>
            <method name="install_and_build_package">
                <param 
name="download_url">ftp://emboss.open-bio.org/pub/EMBOSS/old/5.0.0/PHYLIP-3.6b.tar.gz</param>
                <param name ="build_commands">
                    <command>./configure --without-x 
--prefix=$INSTALL_DIR</command>
                    <command>make</command>
                    <command>make install</command>
                </param>
            </method>
        </fabfile>
        <readme>
These links provide information for building the Emboss package in most 
environments .

System requirements
http://emboss.sourceforge.net/download/#Requirements

Platform-dependent notes
http://emboss.sourceforge.net/download/#Platforms
        </readme>
    </package>
</tool_dependency>
=======================

$INSTALL_DIR is a reserved variable that Galaxy replaces with the installation 
directory that is determined at the time the repository and tool dependencies 
are being installed.

Notice that the above xml file defines the name of the package to be installed 
as well as the version of that package.  This information must be found in the 
<requirements> tag set of at least 1 of the tool config files within that 
downloadable changeset revision of the tool shed repository.  So for the 
emboss_5 tools configs (e.g., emboss_antigenic.xml, etc), the requirements tag 
set looks like this.

<requirements><requirement type="package" 
version="5.0.0">emboss</requirement></requirements>

If the dependency name / version information does not match, the tool 
dependencies cannot be automatically installed when the Galaxy admin installs 
the tool shed repository into their local galaxy instance.

I have several other tool_dependencies.xml examples I can provide if you'd 
like.  But it might be easer if you send me the tool dependencies for which you 
are writing your script and I can provide you the xml definition that will 
handle the installation.

The details will be different for those tool shed repositories in which the 
owner chooses to include a proprietary fabric script.  This these cases, the 
<fabfile> tag becomes <proprietary_fabfile>.  I have a working prototype for 
handling this approach, but things may change slightly before I call it 
finished.

I look forward to your response on this.  Thanks very much for your interest!

Greg Von Kuster


On Jun 1, 2012, at 12:06 PM, Sebastian J Schultheiss wrote:

> Dear Greg,
> 
> according to the Tool Shed wiki page, you will be enabling installation of 
> Tool Shed tools with 3rd party dependencies very soon. 
> 
> Together with Enis Afgan I created several fabric scripts a while ago that 
> install some of our tools into an EC2 instance of Galaxy. We are now in the 
> process of updating these scripts and wanted to add new ones. Is there 
> already a (preliminary) framework that those fabric scripts should follow if 
> they are to be packaged in the tool shed repository?
> 
> Thanks for your help!
> 
> -- Sebastian
> ___________________________________________________________
> Please keep all replies on the list by using "reply all"
> in your mail client.  To manage your subscriptions to this
> and other Galaxy lists, please use the interface at:
> 
>  http://lists.bx.psu.edu/

___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/

Reply via email to