Hi Jeroen, The idea of having a tool to automatically generate Galaxy wrappers is attractive, and in some cases, possible. For example, I know that the tools in QIIME (http://qiime.sourceforge.net/) use some sort of argument declaration and a Python module to read it and deal with the command-line interface. This makes it possible to write a converter that would generate (or at least kickstart) Galaxy wrappers. I also have some Perl scripts that use the Getopt::Euclid module (http://search.cpan.org/dist/Getopt-Euclid/), which declares all the arguments taken by the program. I have been contemplating writing code that would convert the Getopt::Euclid specifications into a Galaxy wrapper. At the moment, though, there are quite a few outstanding irritating bugs in the Galaxy wrapper system that force you to use workarounds to get a working wrapper: https://bitbucket.org/galaxy/galaxy-central/issues?component=tools-config&sort=id <https://bitbucket.org/galaxy/galaxy-central/issues?component=tools-config&sort=id>. Needless to say that it would be easier to automated wrapper generation if these bugs were fixed. Regards, Florent On 14/05/11 00:03, J. F. J. Laros wrote:
Dear Dave,
This indeed sounds like an interesting alternative. I'll look into it.
With kind regards, Jeroen.
On Fri, May 13, 2011 at 01:48:12PM +0000, Dave Walton wrote:
An alternative might be to have something like GenePattern has. It's not as seamless for the person who wants the wrapper as what's been suggested here, but it's easier than creating a lengthy XML file.
GenePattern has an HTML Form interface for entering all the components of your tool, including the command-line you want to expose and the parameters you want to make available, and then it generates the back-end.
There are definite down-sides to this. I've never tested what keeps the tool in GenePattern from letting you do destructive things.
Dave
On 5/13/11 9:41 AM, "Peter Cock"<p.j.a.cock@googlemail.com> wrote:
On Fri, May 13, 2011 at 2:12 PM, J. F. J. Laros<J.F.J.Laros@lumc.nl> wrote:
Hi Pieter,
Thanks for the reply, but from the looks of it, this is a way to incorporate webservice clients into galaxy. What I want is slightly different.
I'm talking about adding a normal command line tool (an aligner for example) but I'm not willing to write a wrapper each time (the wrapper for BWA for example is 327 lines). If a computer readable description of the interface exists, this description can be used to generate a python wrapper. I mentioned WSDL because this also gives a description of an interface, but any equivalent description would of course be fine.
Ideally, such a description is maintained by the developer of the tool in question.
With kind regards, Jeroen. How many tools can you name that come with such a machine readable file describing their command line interface?
I can think of only one - the EMBOSS tool suite and their ACD files (used internally by EMBOSS to generate the command line help, documentation, and do the command line option parsing).
Unfortunately I don't think there is an easy answer - even if wrapping a tool where all the input and output formats are already supported in Galaxy.
Peter ___________________________________________________________ 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: