# HG changeset patch # User fubar # Date 1409221111 14400 # Node ID 8603867451d8cbfc6cd29c14bf787fd692d3b15a # Parent 64f7bd086146bd0e978ed387198271ceca9429a4 Uploaded diff -r 64f7bd086146 -r 8603867451d8 README.txt --- a/README.txt Thu Aug 28 03:05:01 2014 -0400 +++ b/README.txt Thu Aug 28 06:18:31 2014 -0400 @@ -16,14 +16,6 @@ freeze the supplied script into a new, ordinary Galaxy tool that runs it over a single input file, working just like any other Galaxy tool for your users. -If you use the Html output option, please ensure that sanitize_all_html is set to False and -uncommented in universe_wsgi.ini - it should show: - -# By default, all tool output served as 'text/html' will be sanitized -sanitize_all_html = False - -*More Detail* - To use the ToolFactory, you should have prepared a script to paste into a text box, and a small test input example ready to select from your history to test your new script. There is an example in each scripting language on the Tool Factory form. You can just @@ -48,6 +40,31 @@ Tool factory tools are perfect for workflow components. One input, one output, no variables. +*Reasons to read further* + +If you use Galaxy to support your research; + +You and fellow users are sometimes forced to take data out of Galaxy, process it with ugly +little perl/awk/sed/R... scripts and put it back; + +You do this when you can't do some transformation in Galaxy (the 90/10 rule); + +You don't have enough developer resources for wrapping dozens of even relatively simple tools; + +Your research and your institution would be far better off if those feral scripts were all tucked +safely in your local toolshed and Galaxy histories. + +*The good news* If it can be trivially scripted, it can be running safely in your +local Galaxy via your own local toolshed in a few minutes - with functional tests. + + +*Value proposition* The ToolFactory allows Galaxy to efficiently take over most of your lab's +dark script matter, making it reproducible in Galaxy and shareable through the ToolShed. + +That's what this tool does. You paste a simple script and the tool returns +a new, real Galaxy tool, ready to be installed from the local toolshed to local servers. +Scripts can be wrapped and online literally within minutes. + *To fully and safely exploit the awesome power* of this tool, Galaxy and the ToolShed, you should be a developer installing this tool on a private/personal/scratch local instance where you are an admin_user. Then, if you break it, you get to keep all the pieces @@ -55,10 +72,9 @@ ** Installation ** This is a Galaxy tool. You can install it most conveniently using the administrative "Search and browse tool sheds" link. -Find the Galaxy Main toolshed at https://toolshed.g2.bx.psu.edu/ and search for the toolfactory repository. +Find the Galaxy Test toolshed (not main) and search for the toolfactory repository. Open it and review the code and select the option to install it. -( If you can't get the tool that way, the xml and py files here need to be copied into a new tools subdirectory such as tools/toolfactory Your tool_conf.xml needs a new entry pointing to the xml file - something like:: @@ -69,8 +85,11 @@ If not already there (I just added it to datatypes_conf.xml.sample), please add: -to your local data_types_conf.xml. -) +to your local data_types_conf.xml. + +Ensure that html sanitization is set to False and uncommented in universe_wsgi.ini + +You'll have to restart the server for the new tool to be available. Of course, R, python, perl etc are needed on your path if you want to test scripts using those interpreters. Adding new ones to this tool code should be easy enough. Please make suggestions as bitbucket issues and code. @@ -118,6 +137,18 @@ Patches and suggestions welcome as bitbucket issues please? +long route to June 2012 product +derived from an integrated script model +called rgBaseScriptWrapper.py +Note to the unwary: + This tool allows arbitrary scripting on your Galaxy as the Galaxy user + There is nothing stopping a malicious user doing whatever they choose + Extremely dangerous!! + Totally insecure. So, trusted users only + + + + copyright ross lazarus (ross stop lazarus at gmail stop com) May 2012 all rights reserved diff -r 64f7bd086146 -r 8603867451d8 rgToolFactory.py --- a/rgToolFactory.py Thu Aug 28 03:05:01 2014 -0400 +++ b/rgToolFactory.py Thu Aug 28 06:18:31 2014 -0400 @@ -7,9 +7,6 @@ # Licensed under the LGPL # suggestions for improvement and bug fixes welcome at https://bitbucket.org/fubar/galaxytoolfactory/wiki/Home # -# august 2014 -# added some additional output datatypes -# john added citations # march 2014 # had to remove dependencies because cross toolshed dependencies are not possible - can't pre-specify a toolshed url for graphicsmagick and ghostscript # grrrrr - night before a demo diff -r 64f7bd086146 -r 8603867451d8 rgToolFactory.xml --- a/rgToolFactory.xml Thu Aug 28 03:05:01 2014 -0400 +++ b/rgToolFactory.xml Thu Aug 28 06:18:31 2014 -0400 @@ -1,5 +1,5 @@ - - Run a script; make a tool! + + Makes scripts into tools ghostscript graphicsmagick @@ -105,22 +105,15 @@ - - - - - - - - - - + + + + - - - make_TAB=="yes" - - - - - - - - - + + make_TAB == "yes" + + + + make_HTML == "yes" diff -r 64f7bd086146 -r 8603867451d8 tool_dependencies.xml --- a/tool_dependencies.xml Thu Aug 28 03:05:01 2014 -0400 +++ b/tool_dependencies.xml Thu Aug 28 06:18:31 2014 -0400 @@ -1,10 +1,10 @@ - + - + Only Admins can use this tool generator but please do NOT install on a public facing Galaxy as it exposes unrestricted scripting as your Galaxy user