Mercurial > repos > fubar > toolfactory
comparison README.txt @ 30:fb3fa6a2874d draft
Citations added (thanks John!) and a few more output formats for Alistair Chilcott
author | fubar |
---|---|
date | Thu, 28 Aug 2014 02:22:39 -0400 |
parents | bff4c9bfabc7 |
children | 117a5ada6a6a |
comparison
equal
deleted
inserted
replaced
29:bff4c9bfabc7 | 30:fb3fa6a2874d |
---|---|
14 | 14 |
15 In addition, this tool optionally generates very simple new Galaxy tools, that effectively | 15 In addition, this tool optionally generates very simple new Galaxy tools, that effectively |
16 freeze the supplied script into a new, ordinary Galaxy tool that runs it over a single input file, | 16 freeze the supplied script into a new, ordinary Galaxy tool that runs it over a single input file, |
17 working just like any other Galaxy tool for your users. | 17 working just like any other Galaxy tool for your users. |
18 | 18 |
19 If you use the Html output option, please ensure that sanitize_all_html is set to False and | |
20 uncommented in universe_wsgi.ini - it should show: | |
21 | |
22 # By default, all tool output served as 'text/html' will be sanitized | |
23 sanitize_all_html = False | |
24 | |
25 | |
26 *More Detail* | |
27 | |
19 To use the ToolFactory, you should have prepared a script to paste into a text box, | 28 To use the ToolFactory, you should have prepared a script to paste into a text box, |
20 and a small test input example ready to select from your history to test your new script. | 29 and a small test input example ready to select from your history to test your new script. |
21 There is an example in each scripting language on the Tool Factory form. You can just | 30 There is an example in each scripting language on the Tool Factory form. You can just |
22 cut and paste these to try it out - remember to select the right interpreter please. You'll | 31 cut and paste these to try it out - remember to select the right interpreter please. You'll |
23 also need to create a small test data set using the Galaxy history add new data tool. | 32 also need to create a small test data set using the Galaxy history add new data tool. |
38 the tools you generate with the ToolFactory run just like any other Galaxy tool, | 47 the tools you generate with the ToolFactory run just like any other Galaxy tool, |
39 but run your script every time. | 48 but run your script every time. |
40 | 49 |
41 Tool factory tools are perfect for workflow components. One input, one output, no variables. | 50 Tool factory tools are perfect for workflow components. One input, one output, no variables. |
42 | 51 |
43 *Reasons to read further* | |
44 | |
45 If you use Galaxy to support your research; | |
46 | |
47 You and fellow users are sometimes forced to take data out of Galaxy, process it with ugly | |
48 little perl/awk/sed/R... scripts and put it back; | |
49 | |
50 You do this when you can't do some transformation in Galaxy (the 90/10 rule); | |
51 | |
52 You don't have enough developer resources for wrapping dozens of even relatively simple tools; | |
53 | |
54 Your research and your institution would be far better off if those feral scripts were all tucked | |
55 safely in your local toolshed and Galaxy histories. | |
56 | |
57 *The good news* If it can be trivially scripted, it can be running safely in your | |
58 local Galaxy via your own local toolshed in a few minutes - with functional tests. | |
59 | |
60 | |
61 *Value proposition* The ToolFactory allows Galaxy to efficiently take over most of your lab's | |
62 dark script matter, making it reproducible in Galaxy and shareable through the ToolShed. | |
63 | |
64 That's what this tool does. You paste a simple script and the tool returns | |
65 a new, real Galaxy tool, ready to be installed from the local toolshed to local servers. | |
66 Scripts can be wrapped and online literally within minutes. | |
67 | |
68 *To fully and safely exploit the awesome power* of this tool, Galaxy and the ToolShed, | 52 *To fully and safely exploit the awesome power* of this tool, Galaxy and the ToolShed, |
69 you should be a developer installing this tool on a private/personal/scratch local instance where you | 53 you should be a developer installing this tool on a private/personal/scratch local instance where you |
70 are an admin_user. Then, if you break it, you get to keep all the pieces | 54 are an admin_user. Then, if you break it, you get to keep all the pieces |
71 see https://bitbucket.org/fubar/galaxytoolfactory/wiki/Home | 55 see https://bitbucket.org/fubar/galaxytoolfactory/wiki/Home |
72 | 56 |
73 ** Installation ** | 57 ** Installation ** |
74 This is a Galaxy tool. You can install it most conveniently using the administrative "Search and browse tool sheds" link. | 58 This is a Galaxy tool. You can install it most conveniently using the administrative "Search and browse tool sheds" link. |
75 Find the Galaxy Test toolshed (not main) and search for the toolfactory repository. | 59 Find the Galaxy Main toolshed at https://toolshed.g2.bx.psu.edu/ and search for the toolfactory repository. |
76 Open it and review the code and select the option to install it. | 60 Open it and review the code and select the option to install it. |
77 | 61 |
62 ( | |
78 If you can't get the tool that way, the xml and py files here need to be copied into a new tools | 63 If you can't get the tool that way, the xml and py files here need to be copied into a new tools |
79 subdirectory such as tools/toolfactory Your tool_conf.xml needs a new entry pointing to the xml | 64 subdirectory such as tools/toolfactory Your tool_conf.xml needs a new entry pointing to the xml |
80 file - something like:: | 65 file - something like:: |
81 | 66 |
82 <section name="Tool building tools" id="toolbuilders"> | 67 <section name="Tool building tools" id="toolbuilders"> |
83 <tool file="toolfactory/rgToolFactory.xml"/> | 68 <tool file="toolfactory/rgToolFactory.xml"/> |
84 </section> | 69 </section> |
85 | 70 |
86 If not already there (I just added it to datatypes_conf.xml.sample), please add: | 71 If not already there (I just added it to datatypes_conf.xml.sample), please add: |
87 <datatype extension="toolshed.gz" type="galaxy.datatypes.binary:Binary" mimetype="multipart/x-gzip" subclass="True" /> | 72 <datatype extension="toolshed.gz" type="galaxy.datatypes.binary:Binary" mimetype="multipart/x-gzip" subclass="True" /> |
88 to your local data_types_conf.xml. | 73 to your local data_types_conf.xml. |
89 | 74 ) |
90 Ensure that html sanitization is set to False and uncommented in universe_wsgi.ini | |
91 | |
92 You'll have to restart the server for the new tool to be available. | |
93 | 75 |
94 Of course, R, python, perl etc are needed on your path if you want to test scripts using those interpreters. | 76 Of course, R, python, perl etc are needed on your path if you want to test scripts using those interpreters. |
95 Adding new ones to this tool code should be easy enough. Please make suggestions as bitbucket issues and code. | 77 Adding new ones to this tool code should be easy enough. Please make suggestions as bitbucket issues and code. |
96 The HTML file code automatically shrinks R's bloated pdfs, and depends on ghostscript. The thumbnails require imagemagick . | 78 The HTML file code automatically shrinks R's bloated pdfs, and depends on ghostscript. The thumbnails require imagemagick . |
97 | 79 |
134 If you opt for an HTML output, you get all the script outputs arranged | 116 If you opt for an HTML output, you get all the script outputs arranged |
135 as a single Html history item - all output files are linked, thumbnails for all the pdfs. | 117 as a single Html history item - all output files are linked, thumbnails for all the pdfs. |
136 Ugly but really inexpensive. | 118 Ugly but really inexpensive. |
137 | 119 |
138 Patches and suggestions welcome as bitbucket issues please? | 120 Patches and suggestions welcome as bitbucket issues please? |
139 | |
140 long route to June 2012 product | |
141 derived from an integrated script model | |
142 called rgBaseScriptWrapper.py | |
143 Note to the unwary: | |
144 This tool allows arbitrary scripting on your Galaxy as the Galaxy user | |
145 There is nothing stopping a malicious user doing whatever they choose | |
146 Extremely dangerous!! | |
147 Totally insecure. So, trusted users only | |
148 | |
149 | |
150 | |
151 | 121 |
152 copyright ross lazarus (ross stop lazarus at gmail stop com) May 2012 | 122 copyright ross lazarus (ross stop lazarus at gmail stop com) May 2012 |
153 | 123 |
154 all rights reserved | 124 all rights reserved |
155 Licensed under the LGPL if you want to improve it, feel free https://bitbucket.org/fubar/galaxytoolfactory/wiki/Home | 125 Licensed under the LGPL if you want to improve it, feel free https://bitbucket.org/fubar/galaxytoolfactory/wiki/Home |