Peter, Pieter and Dave, thank you for the pointers to your tools - they've been extremely helpful!  Now I can see how the process is supposed to work.  I'm not really sure where mine is going wrong, but maybe someone here will have ideas.

So folks, I've had partial success with a repository that includes a tool_dependencies.xml, which sets two environment variables and moves a JAR file from REPOSITORY_INSTALL_DIR to INSTALL_DIR.  But the following things suggest to me that it's only a partial success, and I'm very interested in any insights to clear them up.


1. I have my repository checked into an internal tool shed.  Somewhere in the course of development, I specified a buggy dependency, and now I can't seem to clear it up.  When I go to (re)install my tool from the tool shed, here's what I see in the way of dependencies:

NameVersionTypeOrphan
JAR_PAHTset_environmentyes

and as you might imagine, I've checked the obvious things, and there is no more reference to "JAR_PAHT" (typos and all) anywhere in or around my tool, or in my galaxy-dist directory.  It seems like there's some old metadata cruft that hasn't been cleared out.  How can I clear it out?


2. When I install my tool, I see the following messages in paster.log:

---

tool_shed.galaxy_install.repository_dependencies.repository_dependency_manager DEBUG 2014-09-02 17:13:59,279 Building repository dependency relationships...

172.30.0.22 - - [02/Sep/2014:17:13:59 -0700] "POST /admin_toolshed/prepare_for_install HTTP/1.1" 200 - "http://tcga1:1235/admin_toolshed/prepare_for_install?tool_shed_url=http://medbook.ucsc.edu:9009/&repository_ids=decab5ee1e95b10b&changeset_revisions=ff9b02e50bcf" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"

172.30.0.22 - - [02/Sep/2014:17:14:02 -0700] "POST /admin_toolshed/repository_installation_status_updates HTTP/1.1" 200 - "http://tcga1:1235/admin_toolshed/prepare_for_install" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"

tool_shed.util.shed_util_common DEBUG 2014-09-02 17:14:03,477 Error attempting to get tool shed status for installed repository start_xena: HTTP Error 404: Not Found

Attempting older 'check_for_updates' method.

---

Should I be concerned about these last messages?  I don't remember seeing them with Peter, Pieter and Dave's tools.


3. After my tool has installed, there is no INSTALLATION.log in my INSTALL_DIR.  Does this mean that the installation process somehow terminated early?  There is an env.sh file, with the correct values of the environment variables I'm setting in my tool_dependencies.xml, and my jar file is copied to INSTALL_DIR.  In my Galaxy window, my tool is indicated as "Installed", in green.  Here are the last messages I see in paster.log:

tool_shed.galaxy_install.install_manager DEBUG 2014-09-02 17:14:04,630 Changing status for tool dependency installXena from Installing to Installed.

tool_shed.galaxy_install.install_manager DEBUG 2014-09-02 17:14:04,669 Tool dependency installXena version 1.0 has been installed in /inside/home/cline/src/galaxy-dist/tool_dependencies/installXena/1.0/melissacline/start_xena/3e4683c94d8d.

172.30.0.22 - - [02/Sep/2014:17:13:59 -0700] "POST /admin_toolshed/manage_repositories HTTP/1.1" 302 - "http://tcga1:1235/admin_toolshed/prepare_for_install" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"

172.30.0.22 - - [02/Sep/2014:17:14:04 -0700] "GET /admin_toolshed/monitor_repository_installation?tool_shed_repository_ids=3f5830403180d620 HTTP/1.1" 200 - "http://tcga1:1235/admin_toolshed/prepare_for_install" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"

172.30.0.22 - - [02/Sep/2014:17:14:05 -0700] "POST /admin_toolshed/repository_installation_status_updates HTTP/1.1" 200 - "http://tcga1:1235/admin_toolshed/prepare_for_install" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"


Thanks for the insights, folks!  It actually seems like my tool is running post-install, but I just want to make sure that everything is in place before I go on to the next step.


Melissa





On Sat, Aug 30, 2014 at 5:50 AM, Dave Bouvier <dave@bx.psu.edu> wrote:
Melissa,

You can find additional examples in the following repository:

https://toolshed.g2.bx.psu.edu/view/devteam/package_picard_1_56_0

Which is then sourced by the following two repositories:

https://toolshed.g2.bx.psu.edu/view/devteam/picard
https://toolshed.g2.bx.psu.edu/view/devteam/sam_merge


 --Dave B.


On 2014-08-30 08:13, Lukasse, Pieter wrote:
Hi Melissa,

See also

https://toolshed.g2.bx.psu.edu/view/pieterlukasse/prims_masscomb
or
https://toolshed.g2.bx.psu.edu/view/pieterlukasse/prims_proteomics

Regards,

Pieter.


-----Original Message-----
From: galaxy-dev-bounces@lists.bx.psu.edu [mailto:galaxy-dev-bounces@lists.bx.psu.edu] On Behalf Of Peter Cock
Sent: zaterdag 30 augustus 2014 4:32
To: Melissa Cline
Cc: Galaxy Dev
Subject: Re: [galaxy-dev] Examples of Galaxy tools in the toolsheds that install and run JAR files properly?

On Sat, Aug 30, 2014 at 11:17 AM, Melissa Cline <cline@soe.ucsc.edu> wrote:
Hi folks,

I'm attempting something that should be straightforward, but it's not.
I have a tool that runs a JAR file, which I have bundled with the
tool.  I simply want to run the JAR file.  And to paraphrase Thomas
Edison, I've tried several thousand things that do not work (at least
for me), from setting the JAVA_JAR_PATH environment variable in the
tool_dependencies.xml file to trying to copy the JAR file into the
tool-data/shared/jars subdirectories (which is the closest thing I've
got to working).  So, at long last I'm doing the sensible thing and
looking for one simple working example that I can use as a template.
Who can suggest a good toolshed tool (either main or test) that
involves running its own JAR file, and that works?

Thanks!

Melissa

Here are a couple of my wrappers for Java tools, but I would suggest you invoke the Java script with an absolute path to the JAR file:

$ java -jar ...

Here is two examples done via a Python wrapper script (mainly used for pre or post processing the data files):

https://github.com/peterjc/pico_galaxy/tree/master/tools/effectiveT3
https://github.com/peterjc/galaxy_blast/tree/master/tools/blast2go

For EffectiveT3 which is open source and can therefore be easily redistributed, I set an environment variable EFFECTIVET3 for the location of the Jar file, which is used to invoke it via Java:

$ java -jar ...

For the Blast2GO wrapper, I require the person installing it setup an environment variable B2G4PIPE pointing at the folder with the JAR file. Older versions of this tool you be launched with the same -jar approach, but the current release requires setting a class path instead:

$ java -cp ...

I hope that helps, if not there are bound to be other Java examples in the ToolShed.

Peter
___________________________________________________________
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:
   http://lists.bx.psu.edu/

To search Galaxy mailing lists use the unified search at:
   http://galaxyproject.org/search/mailinglists/

___________________________________________________________
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:
   http://lists.bx.psu.edu/

To search Galaxy mailing lists use the unified search at:
   http://galaxyproject.org/search/mailinglists/