Re: [galaxy-dev] 503 Error when adding a tool from local toolshed
Hi Ira, I'm not quite sure what's causing this, as the 503 error is usually stating that the web server is not available. Setting up your servers behind a proxy is probably not necessary as it just adds another level of complexity - I was just wondering if that's what you had already. It's better that you have the simpler setup while we try to figure this out. When you get back from your trip, send me a message and we'll work on it. As I said in my previous response, your repository installs just fine in my environment, so we'll focus on tracking down what is different in yours. Thanks! Greg Von Kuster On Apr 26, 2012, at 2:27 PM, Ira Cooke wrote:
Hi Greg,
I seem to run into the problem regardless of the revision of Galaxy I use ... it was happening infrequently until recently ... but now it happens every single time I try to install my tools (with the latest galaxy-dist). Yesterday ... I tested with the latest galaxy-central in order to create my bug report.
Unfortunately I'm on a trip until saturday ... so I can't get at the paster log for the VM I did my testing on. I looked at the paster log though and I can remember that the request shown is the same as the request shown in the error. It's this;
All my settings are default except very tiny modifications to add myself as an admin. When I get back from my trip I'll try setting up things behind a proxy and see if that fixes the issue.
Will let you know how I go
Ira
On 26/04/2012, at 11:40 PM, Greg Von Kuster wrote:
Hello Ira,
Sorry you bumped into this problem. I've cloned your protk-toolshed repository and made a bz2 compressed archive as you did. I was able to upload it to a local tool shed, and was successful installing from there to my local Galaxy instance, where my environment is running Galaxy change set revision 7116:0cffe389e1b3. This tells me that the problem is most likely due to your running an older version of Galaxy.
Are you tracking our galaxy-central repository in your environment? Since the galaxy-dist repository is generally 4-8 weeks older than the galaxy-central repository, many of the features enabling the Galaxy <-> tool shed communication are not functional in galaxy-dist.
If this is not the problem, can you send me the snippet of your paster log from your tool shed that shows the request that produced the 503 error? This should help get things figured out. By the way, from your description, I assume you are not running an Apache front-end on either your Galaxy instance or your tool shed - is this correct?
Thanks!
Greg Von Kuster
On Apr 26, 2012, at 3:41 AM, Ira Cooke wrote:
Dear List,
I'm trying to check my toolshed tools by installing first on a local toolshed, but running into an error every time I try to add my tools.
In order to rule out possible idiosyncracies of my system I've reproduced the error on an Ubuntu VM ... the system was not completely clean ... a few packages required by galaxy and some dependencies of my tools have been installed, but I performed the following steps after creating a fresh "galaxy" user.
# Create new user "galaxy" # Create galaxy_env via virtualenv.py # Add entry to .bashrc to ensure python in galaxy_env is the default python for the galaxy user # Fresh checkout of galaxy-central # sh run.sh --reload # Add admin user to galaxy by configuring universe_wsgi.ini # Configure tool_sheds_conf.xml as follows; <?xml version="1.0"?> <tool_sheds> <tool_shed name="Local" url="http://127.0.0.1:9009/"/> <tool_shed name="Galaxy main tool shed" url="http://toolshed.g2.bx.psu.edu/"/> <tool_shed name="Galaxy test tool shed" url="http://testtoolshed.g2.bx.psu.edu/"/> </tool_sheds>
# Restart galaxy # Register myself as a user of galaxy
# Add database_connection line to community_wsgi.ini - database_connection=sqlite:///./database/community.sqlite?isolation_level=IMMEDIATE
# Add admin user to community_wsgi.ini (same as for galaxy admin user) # run sh run_community.sh # Register myself as a user of the local toolshed # Checked out my tools hg clone https://bitbucket.org/iracooke/protk-toolshed
# Made a bz2 file of all my tools cd protk-toolshed ./make_package_data.sh
# Created a new category on the local toolshed ("Proteomics") # Added a tool called "protk" to the Proteomics category # Uploaded a bz2 file with my tools to the local toolshed. Looking at the tool after upload everything seems fine
# Back on galaxy I attempted to load my tools. After clicking the install button in galaxy I get the following traceback (as text)
URL: http://127.0.0.1:8080/admin_toolshed/install_repository?tool_shed_url=http://127.0.0.1:9009/&repo_info_dict=0a19b3600379cf51a9d8ca26ff0e7754f5e99731:7b2270726f746b223a205b2250726f74656f6d69637320746f6f6c6b6974222c2022687474703a2f2f697261636f6f6b65403132372e302e302e313a393030392f7265706f732f697261636f6f6b652f70726f746b222c2022646330343464623536626634222c202230225d7d&includes_tools=True File '/home/galaxy/central/galaxy-central/eggs/WebError-0.8a-py2.7.egg/weberror/evalexception/middleware.py', line 364 in respond app_iter = self.application(environ, detect_start_response) File '/home/galaxy/central/galaxy-central/eggs/Paste-1.6-py2.7.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/galaxy/central/galaxy-central/eggs/Paste-1.6-py2.7.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/galaxy/central/galaxy-central/eggs/Paste-1.6-py2.7.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/galaxy/central/galaxy-central/eggs/Paste-1.6-py2.7.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/galaxy/central/galaxy-central/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/galaxy/central/galaxy-central/lib/galaxy/web/framework/__init__.py', line 184 in decorator return func( self, trans, *args, **kwargs ) File '/home/galaxy/central/galaxy-central/lib/galaxy/web/controllers/admin_toolshed.py', line 371 in install_repository response = urllib2.urlopen( url ) File '/usr/lib/python2.7/urllib2.py', line 126 in urlopen return _opener.open(url, data, timeout) File '/usr/lib/python2.7/urllib2.py', line 400 in open response = meth(req, response) File '/usr/lib/python2.7/urllib2.py', line 513 in http_response 'http', request, response, code, msg, hdrs) File '/usr/lib/python2.7/urllib2.py', line 438 in error return self._call_chain(*args) File '/usr/lib/python2.7/urllib2.py', line 372 in _call_chain result = func(*args) File '/usr/lib/python2.7/urllib2.py', line 521 in http_error_default raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) HTTPError: HTTP Error 503: Service Unavailable
I've since tried to figure out where this error actually occurs ... and (according to my crude debugging methods) the actual error originates at line 371 in admin_toolshed.py .. which looks like this ..
owner = get_repository_owner( clean_repository_clone_url( repository_clone_url ) ) url = '%s/repository/get_readme?name=%s&owner=%s&changeset_revision=%s&webapp=galaxy' % ( tool_shed_url, name, owner, changeset_revision ) response = urllib2.urlopen( url )
... so galaxy attempts to fetch a url for the tool readme file ... and that is failing. I've tried adding a readme.txt and that didn't solve the issue.
Hopefully this is enough for you to be able to reproduce the error ... I'm mainly just keen to get a workable setup for testing my tools, so a workaround would be much appreciated ... if there is anything obviously wrong with how I've set things up above can you let me know.
Thanks Ira
___________________________________________________________ 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:
participants (1)
-
Greg Von Kuster