Hi Stephan, Thank you for the pointers, they will definitely help. Would you be willing to share any of the code you have for the upload tool? Will you be at the LREC conference in Portorož? It might be fun to arrange a meet up of all Galaxy users if we can. Cheers, Keith
On Mar 31, 2016, at 5:12 PM, Stephan Oepen <oe@ifi.uio.no> wrote:
dear keith,
in our work on building the Linguistic Analysis Portal (LAP) at the University of Oslo, we have had to confront the same two issues you mention. our general approach has been to separate LAP-specific code (and specifications) from the Galaxy tree as much as possible.
for example, we keep our tool descriptions, tool implementations, job runner configurations, job resource specifications, and such in a separately versioned tree and use the various options in ‘galaxy.ini’ to point to our own variants, e.g.
tool_path = /home/laportal/tools tool_config_file = /home/laportal/tools/config.xml job_config_file = /home/laportal/tools/jobs.xml job_resource_params_file = /home/laportal/tools/resources.xml
for the upload tool, we modify the JavaScript files (‘upload-row.js’ and ‘upload-view.js’) to hide UI elements (notably the Genome selection) that do not apply to us, and we have added custom code to the actual tool implementation to post-process incoming data. as for the latter changes, our modified ‘upload.py’ and ‘upload.xml’ reside outside the Galaxy tree (with the other tools), so our only risk is that we need to validate compatibility (or import updates) when moving to newer Galaxy versions. for the JavaScript changes, we keep a separate copy of the handful of UI files (from below ‘client/galaxy/’) that we modify outside of Galaxy and use a modified ‘GruntFile.js’ (with different ‘dest’ targets) to make grunt(1) propagate our changes into the Galaxy tree.
maybe some of these techniques could work for you too? oe
On Thu, Mar 31, 2016 at 10:17 PM, Suderman Keith <suderman@cs.vassar.edu> wrote:
Dear Galaxy Team,
Two questions.
1) Is there a bare-bones version of Galaxy available somewhere? That is, Galaxy with no tools pre-installed? We are creating Ansible play books for configuring Docker/Galaxy instances with our NLP tools installed. Currently we are using a fork of the Galaxy project with the bio tools removed, but this is less than ideal when we try to update to new versions of Galaxy.
Alternatively, does anyone have an automated process to delete unwanted tools that we could run immediately after cloning the main Galaxy repo?
2) Is is possible to either a) modify the existing upload tool, or b) implement a new upload tool? Several options in the upload tool do not make sense in our domain (e.g. selecting a genome) and we would also like to do some post-processing to files after they have been uploaded. I've looked at the code for the existing upload tool and it seems quite tightly coupled to the Galaxy code base. I was hoping the "Downgrade upload tool" thread from a few weeks ago was going to help, but unfortunately for me (and good for the user) they found a solution that didn't involve installing a new upload tool.
However, could I follow the approach suggested in that thread? I.E. go back in time and find an old upload.[py | xml] and use that as a starting point for my own custom upload tool? How far back in time would I have to go to find an upload.py that was a standalone tool?
Cheers, Keith
------------------------------ Research Associate Department of Computer Science Vassar College Poughkeepsie, NY
___________________________________________________________ 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: https://lists.galaxyproject.org/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
------------------------------ Research Associate Department of Computer Science Vassar College Poughkeepsie, NY