TL;DR I have a tool that generates other tools. Where should those tools go, 
and how should I add them (without modifying Galaxy code)?

I apologize, in advance, for the wall of text. I would like some advice on what 
the best way to go about setting up a tool that generates other tools... 

As some of you (especially those who saw my boss's talk at GCC) already know, 
I'm working on a tool that lets galaxy users add web service operations as 
tools to Galaxy. We have a general purpose client for invoking web services, 
and we have a tool that let's a user enter a WSDL/WADL URL, select the 
operations they want to add, and generates tool config XML files for Galaxy.  

Right now, I'm in the process of making our tool "tool shed" compatible, and 
that's going along great (I especially like the tool dependency installation 
stuff), but I'm trying to determine the best course of action on the following:

1. Where is the best place to put the tool config (XML) files that are 
generated by my tool? My predecessors just placed them in a subdirectory under 
our tool's directory. I'm ok with this, but does that mean that all the 
generated files will get removed if they upgrade our tool via the tool shed 
(haven't taken the time to see if Galaxy just does an "hg pull" or if it's more 
complicated than that)? Would it be better to have my tool create a local tool 
shed repository (just for these generated tools), and if so, can the tool shed 
API let my tool install this repository? Having not looked at yet, it's unclear from the wiki documentation 
whether or not POST /api/tool_shed_repositories/install_repository_revision 
requires that the tool shed already registered in tool_sheds_conf.xml)? 

2. What's the best way to add the generated tools to Galaxy? My predecessors 
modified the tool_config.xml directly and required users to restart Galaxy. 
Now, If these tools are in a tool shed repo, I know that I can use the 
add_to_tool_panel() method in lib/tool_shed/util/ if these tools 
are in a tool shed repo, however, if that's not the recommended course of 
action, then I'd like some advice on what to do?


Michael E. Cotterell

Ph.D. Student in Computer Science, University of Georgia
Instructor of Record, Graduate RA & TA, University of Georgia
Faculty Liaison, CS Graduate Student Association, University of Georgia ( ( (

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:

To search Galaxy mailing lists use the unified search at:

Reply via email to