It's also possible to reload a tool's configuration via the Admin interface. However, it's not possible to add and remove tools. This is something we'd like to support, but have not yet done. There's an issue for it which you can track here:
http://bitbucket.org/galaxy/galaxy-central/issue/279/restart-required-after-adding-a-new-tool
--nate
Bossers, Alex wrote:
> Kostas
> Some time ago a similar idea was posted to the dev list. We have taken that to modify our source code as well that adds a tool to the list which allows a dynamic refresh of the tools/server without a reboot of it....
> Maybe it can give you a lead to start.
> Not sure if the attachment is filtered.... But I try to add the original post we used successfully.
>
> Alex
>
>
>
> Van:
galaxy-dev-bounces@lists.bx.psu.edu
> [mailto:
galaxy-dev-bounces@lists.bx.psu.edu] Namens Kostas Karasavvas
> Verzonden: maandag 22 november 2010 11:41
> Aan: Galaxy Dev
> Onderwerp: [galaxy-dev] dynamic loading of tools?
>
>
> Hi all!
>
> It is my understanding that galaxy does not support dynamic loading of tools, i.e. for every new tool you add you need to manually change the conf file and restart the server.
>
> I am working on integrating functionality of another system into galaxy. To do this I am actually generating Galaxy tools automatically with certain scripts. The tools generated depend on certain parameters so there can be an arbitrary number of tools generated. Installing them manually and restarting the server is not ideal in this situation since it would depend on an administrator doing the work (rather than the user).
>
> The ideal scenario would be for me to create a tool that can dynamically create and add new tools. However, the latter (adding new tools dynamically) does not seem to be possible right now.
>
> I can think of other reasons that people would like that as well (e.g. for administration purposes). I am not sure if that was already discussed in the past but I was wondering if that is that something that you consider implementing in the near future.
>
> Thank you in advance,
> Kostas
>
Received: from
scomp0237.wurnet.nl (10.91.3.10) by
scomp0538.wurnet.nl
(10.91.3.92) with Microsoft SMTP Server id 8.2.254.0; Fri, 23 Jul 2010
00:45:23 +0200
Received: from
scomp0236vssmtp2.wurnet.nl ([10.90.3.89]) by
scomp0237.wurnet.nl with Microsoft SMTPSVC(6.0.3790.4675);
Fri, 23 Jul 2010 00:45:23 +0200
Received: from
net4.wur.nl ([137.224.8.4]) by
scomp0236vssmtp2.wurnet.nl with
Microsoft SMTPSVC(6.0.3790.4675); Fri, 23 Jul 2010 00:45:22 +0200
Received: from mppd (localhost.localdomain [127.0.0.1]) by
net4.wur.nl
(Postfix) with ESMTP id 7DED650392 for <
alex.bossers@wur.nl>;
Fri, 23 Jul 2010 00:45:22 +0200 (CEST)
Received: from
smtp.bx.psu.edu (
smtp.bx.psu.edu [128.118.200.79]) by
net4.wur.nl (Postfix) with ESMTP id DA0095038B for
<
alex.bossers@wur.nl>; Fri, 23 Jul 2010 00:45:17 +0200 (CEST)
Received: from
lists.bx.psu.edu (
lists.bx.psu.edu [IPv6:2610:8:7800:14::33])
by
smtp.bx.psu.edu (8.13.8/8.13.8) with ESMTP id o6MMeUFZ023932
(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
Thu, 22 Jul 2010 18:40:35 -0400
Received: from
lists.bx.psu.edu (localhost.localdomain [127.0.0.1]) by
lists.bx.psu.edu (8.13.8/8.13.8) with ESMTP id o6MMeSwY029634;
Thu, 22 Jul 2010 18:40:29 -0400
Received: from
mail-3.bx.psu.edu (
mail-3.bx.psu.edu [IPv6:2610:8:7800:14::17])
by
lists.bx.psu.edu (8.13.8/8.13.8) with ESMTP id o6MMeQt4029631 for
<
galaxy-dev@lists.bx.psu.edu>; Thu, 22 Jul 2010 18:40:26 -0400
Received: from
mail-iw0-f171.google.com (
mail-iw0-f171.google.com
[209.85.214.171]) by
mail-3.bx.psu.edu (8.13.8+Sun/8.13.8) with ESMTP
id o6MMeOup007767 for <
galaxy-dev@lists.bx.psu.edu>;
Thu, 22 Jul 2010 18:40:24 -0400 (EDT)
Received: by iwn41 with SMTP id 41so7548577iwn.30 for
<
galaxy-dev@lists.bx.psu.edu>; Thu, 22 Jul 2010 15:40:23 -0700 (PDT)
Received: by 10.231.170.3 with SMTP id b3mr2477857ibz.122.1279838423221; Thu,
22 Jul 2010 15:40:23 -0700 (PDT)
Received: by 10.231.167.197 with HTTP; Thu, 22 Jul 2010 15:40:03 -0700 (PDT)
From: Sumedha Ganjoo <
sumedha.coep@gmail.com>
To: Nate Coraor <
nate@bx.psu.edu>
CC: "
galaxy-dev@lists.bx.psu.edu" <
galaxy-dev@lists.bx.psu.edu>
Sender: "
galaxy-dev-bounces@lists.bx.psu.edu"
<
galaxy-dev-bounces@lists.bx.psu.edu>
Date: Fri, 23 Jul 2010 00:40:03 +0200
Subject: Re: [galaxy-dev] Dynamically adding tools to Galaxy
Thread-Topic: [galaxy-dev] Dynamically adding tools to Galaxy
Thread-Index: Acsp75IIF6dFDRXYTtC6Ua65Wk5/IQ==
Message-ID: <
AANLkTik-Yg1jEY-83LpXFnODKl9_obNjB_ydM_wQe9Pt@mail.gmail.com>
References: <
g2sc9bc79f31004281725y8cd445f4s5a859072b1329150@mail.gmail.com>
<
4BE03142.1080005@bx.psu.edu>
List-Help: <mailto:
galaxy-dev-request@lists.bx.psu.edu?subject=help>
List-Subscribe: <
http://lists.bx.psu.edu/listinfo/galaxy-dev>,
<mailto:
galaxy-dev-request@lists.bx.psu.edu?subject=subscribe>
List-Unsubscribe: <
http://lists.bx.psu.edu/options/galaxy-dev>,
<mailto:
galaxy-dev-request@lists.bx.psu.edu?subject=unsubscribe>
In-Reply-To: <
4BE03142.1080005@bx.psu.edu>
X-MS-Exchange-Organization-AuthSource:
scomp0538.wurnet.nl
X-MS-Has-Attach: yes
X-Auto-Response-Suppress: All
X-Message-Flag: Opvolgen
X-MS-TNEF-Correlator:
x-originalarrivaltime: 22 Jul 2010 22:45:23.0009 (UTC)
FILETIME=[91CAA310:01CB29EF]
x-scanned-by: MPP/UVScan
http://www.messagepartners.com
x-spam-score-w: 0.00
x-cmae-analysis: v=1.1 cv=fUaoZdHiiR1Ye5JTY/eH9iPeITsfKkYQDMHEJwn1uYA= c=1
sm=0 a=a7g1sp7ABEYA:10 a=z/hhryxzkUjPxlvzZvuYMg==:17 a=UFTA8MH_AAAA:8
a=MZ835NvUiE_0yfBFEZMA:9 a=Udg_A6JTJAWpEaTnU8sA:7
a=Tbp9rZ1s4vtHFYmUjL441tBpgEcA:4 a=wPNLvfGTeEIA:10
a=KPRkQpHNtW1iuMAl:21
a=fATZA0vSaqpTR2tp:21 a=qqnlKD7AaSrvDNBfsdsA:9 a=0qljBdFCMktjyTfHzoYA:7
a=RFRZmjwnADD-nDt4tSnC-U35Yu4A:4 a=CjuIK1q_8ugA:10
a=jhGV3HG5NYKjns5fhaYA:9
a=hK_z272k09DLPGtYlAirp4Wfq7UA:4 a=z/hhryxzkUjPxlvzZvuYMg==:117
x-spam-rules: AWL,BAYES_00,SUBJ_ALL_CAPS
domainkey-signature: a=rsa-sha1; c=nofws; d=
gmail.com; s=gamma;
h=mime-version:in-reply-to:references:from:date:message-id:subject:to
:cc:content-type;
b=u5BSHgrAE5krO1yXAYhFZfMHmO2utxRowmpQKM0Dt004jBHTAZsLfKKVDdf7ZXLzfG
Wv2e3KQRZZzQ9lS+hf1z36gg393/xTgqtgr/JaxYVFg7Xa01dEBTHZy2BPqDwI98iWv1
8xXrROQ4rymOT7omuGOyHx5hq9IAr+UxP8hSE=
dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
gmail.com; s=gamma;
h=domainkey-signature:received:mime-version:received:in-reply-to
:references:from:date:message-id:subject:to:cc:content-type;
bh=yid8u8U6jBy53596iThUjPZvCU9lsWn6w/YGGh/jjJc=;
b=MvB9N8i/eWd5IpbnJlY7Hq41oCUrQnO2O9s256ohY/Xd1OPROopcV+ZvM/jlAlufC4
zAdtyYKRFSF+yAOb3Y+Q/omsFOCFIKic4ajio2Yd49aOahGWCRkwIpUjCLTRKlkxde4v
+6YLEiA3px9qNYC1jRyd/XDslXgMJ3MQgl47Y=
x-virus-scanned: amavisd-new on
amavis-1.bx.psu.edu
errors-to:
galaxy-dev-bounces@lists.bx.psu.edu
authentication-results:
amavis-1.bx.psu.edu (amavisd-new); domainkeys=pass
header.from=
sumedha.coep@gmail.com
list-archive: <
http://lists.bx.psu.edu/pipermail/galaxy-dev>
x-beenthere:
galaxy-dev@lists.bx.psu.edu
x-mailman-version: 2.1.12
delivered-to: <
galaxy-dev@lists.bx.psu.edu>
list-id: Discussion list and announcements for Galaxy developers
<
galaxy-dev.lists.bx.psu.edu>
list-post: <mailto:
galaxy-dev@lists.bx.psu.edu>
x-envelope-from:
sumedha.coep@gmail.com
x-envelope-to: <
galaxy-dev@lists.bx.psu.edu>
Content-Type: multipart/mixed;
boundary="_003_AANLkTikYg1jEY83LpXFnODKl9obNjBydMwQe9Ptmailgmailcom_"
MIME-Version: 1.0
>
> Hello,
>
> We here at the Universoty of Georgia have developed a suite of tools to enable accessing Web services through Galaxy's interface, one time and also in workflows. We do this by reading the descriptions of the Web services (from WSDLs and WADLs) and adding tools dynamically to Galaxy that are able to take correct inputs from the user and invoke these services.
>
> Though most of this functionality was added by adding tools, we had to make minimal change in Galaxy's source code to support the capability of refreshing Galaxy toolbox without restarting the server.
> This is hardly 5 lines of code that was added to Galaxy's code base.
> These tools will be available shortly
> on the community page. I was wondering if it will be possible to add the support for dynamic tool addition to the main instance of Galaxy. Please find the details below:
>
>
> Changes to Galaxy to add refresh toolbox ability:
> 1. change the execute method of the class tool in
> lib/galaxy/tools/__init__.py to
>
> def execute( self, trans, incoming={}, set_output_hid=True ):
> """
> Execute the tool using parameter values in `incoming`. This just
> dispatches to the `ToolAction` instance specified by
> `self.tool_action`. In general this will create a `Job` that
> when run will build the tool's outputs, e.g. `DefaultToolAction`.
> """
>
> #############
> #add code to verify if user has administrative privileges
> #added by sumedha ganjoo,
sganjoo@uga.edu: line 1104 to 1109 - to refresh toolbox
> if
self.id == 'REFRESH_ID':
> self.app.refreshToolBox()
> #############
>
> return self.tool_action.execute( self, trans,
> incoming=incoming, set_output_hid=set_output_hid )
>
> 2. add refreshToolBox method (find below) to UniverseApplication class
> in lib/galaxy/app.py
>
> ###########
> # added by sumedha ganjoo,
sganjoo@uga.edu, line 86-90
> def refreshToolBox( self):
> self.toolbox = tools.ToolBox( self.config.tool_config, self.config.tool_path, self )
> ###########
>
>
> 3. Add Refresh tool. Attached.
>
> Thanks,
> Sumedha
>
>
> <tool id="REFRESH_ID" name="Refresh" Version="1.0.0"> <description>
> :Refresh Galaxy</description> <command interpreter="python">
> refreshTool.py
> $input
> $output
> </command>
> <inputs>
> <param name="input" type="select" display="radio" size="250" label="Execute this tool by clicking on Execute button">
> <option value="refresh">Refresh Galaxy</option>
> </param>
>
> </inputs>
> <outputs>
> <data format="tabular" name="output" />
> </outputs>
> <tests>
> </tests>
> <help>
>
>
> **Click on "Galaxy" on the top left corner of this window to refresh
> the page.**
>
> </help>
> </tool>
>
> _______________________________________________
> galaxy-dev mailing list
>
galaxy-dev@lists.bx.psu.edu
>
http://lists.bx.psu.edu/listinfo/galaxy-dev
> _______________________________________________
> galaxy-dev mailing list
>
galaxy-dev@lists.bx.psu.edu
>
http://lists.bx.psu.edu/listinfo/galaxy-dev
_______________________________________________
galaxy-dev mailing list
galaxy-dev@lists.bx.psu.edu
http://lists.bx.psu.edu/listinfo/galaxy-dev