This document is for an old release of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.

tool_shed.webapp package

The Galaxy Tool Shed application.

tool_shed.webapp.url_for(*args, **kargs)[source]

Generates a URL

All keys given to url_for are sent to the Routes Mapper instance for generation except for:

anchor          specified the anchor name to be appened to the path
host            overrides the default (current) host if provided
protocol        overrides the default (current) protocol if provided
qualified       creates the URL with the host/port information as

The URL is generated based on the rest of the keys. When generating a new URL, values will be used from the current request’s parameters (if present). The following rules are used to determine when and how to keep the current requests parameters:

  • If the controller is present and begins with ‘/’, no defaults are used

  • If the controller is changed, action is set to ‘index’ unless otherwise specified

For example, if the current request yielded a dict of {‘controller’: ‘blog’, ‘action’: ‘view’, ‘id’: 2}, with the standard ‘:controller/:action/:id’ route, you’d get the following results:

url_for(id=4)                    =>  '/blog/view/4',
url_for(controller='/admin')     =>  '/admin',
url_for(controller='admin')      =>  '/admin/view/2'
url_for(action='edit')           =>  '/blog/edit/2',
url_for(action='list', id=None)  =>  '/blog/list'

Static and Named Routes

If there is a string present as the first argument, a lookup is done against the named routes table to see if there’s any matching routes. The keyword defaults used with static routes will be sent in as GET query arg’s if a route matches.

If no route by that name is found, the string is assumed to be a raw URL. Should the raw URL begin with / then appropriate SCRIPT_NAME data will be added if present, otherwise the string will be used as the url with keyword args becoming GET query args.


Decorator: mark a function as ‘exposed’ and thus web accessible


tool_shed.webapp.app module

class tool_shed.webapp.app.UniverseApplication(**kwd)[source]

Bases: galaxy.structured_app.BasicApp

Encapsulates the state of a Universe application


container – Optional container if provided the existing definitions will be copied

:param log_undefined_deps indicates if a log message should be emmited when an undefined dep is loaded

name: str
config: Any
application_stack: galaxy.web_stack.ApplicationStack
datatypes_registry: galaxy.datatypes.registry.Registry
model: galaxy.model.base.SharedModelMapping
security: galaxy.security.idencoding.IdEncodingHelper
auth_manager: galaxy.auth.AuthManager
security_agent: Any
quota_agent: galaxy.quota.QuotaAgent
toolbox: Any

tool_shed.webapp.buildapp module

Provides factory methods to assemble the Galaxy web application

class tool_shed.webapp.buildapp.CommunityWebApplication(galaxy_app, session_cookie='galaxysession', name=None)[source]

Bases: galaxy.webapps.base.webapp.WebApplication

tool_shed.webapp.buildapp.add_ui_controllers(webapp, app)[source]

Search for controllers in the ‘galaxy.webapps.controllers’ module and add them to the webapp.

tool_shed.webapp.buildapp.app_factory(global_conf, load_app_kwds=None, **kwargs)[source]

Return a wsgi application serving the root object

tool_shed.webapp.buildapp.wrap_in_middleware(app, global_conf, application_stack, **local_conf)[source]

Based on the configuration wrap app in a set of common and useful middleware.

tool_shed.webapp.buildapp.wrap_in_static(app, global_conf, **local_conf)[source]

tool_shed.webapp.config module

Universe configuration builder.

class tool_shed.webapp.config.ToolShedAppConfiguration(**kwargs)[source]

Bases: galaxy.config.BaseAppConfiguration, galaxy.config.CommonConfigurationMixin

default_config_file_name = 'tool_shed.yml'
add_sample_file_to_defaults: Set[str] = {'datatypes_config_file'}

Initialize self. See help(type(self)) for accurate signature.

property shed_tool_data_path

alias of tool_shed.webapp.config.ToolShedAppConfiguration