diff --git a/lib/galaxy/tools/toolbox/base.py b/lib/galaxy/tools/toolbox/base.py index 2a2b998b253..87573e8d6d0 100644 --- a/lib/galaxy/tools/toolbox/base.py +++ b/lib/galaxy/tools/toolbox/base.py @@ -397,6 +397,11 @@ class AbstractToolBox( Dictifiable, ManagesIntegratedToolPanelMixin, object ): return self._tool_versions_by_id[ tool_id ][ tool_version ] # tool_id exactly matches an available tool by id (which is 'old' tool_id or guid) return self._tools_by_id[ tool_id ] + elif exact: + # We're looking for an exact match, so we skip lineage and + # versionless mapping, though we may want to check duplicate + # toolsheds + continue # exact tool id match not found, or all versions requested, search for other options, e.g. migrated tools or different versions rval = [] tool_lineage = self._lineage_map.get( tool_id ) diff --git a/lib/galaxy/webapps/galaxy/controllers/admin.py b/lib/galaxy/webapps/galaxy/controllers/admin.py index 7757e5aada0..d061506bc2a 100644 --- a/lib/galaxy/webapps/galaxy/controllers/admin.py +++ b/lib/galaxy/webapps/galaxy/controllers/admin.py @@ -445,7 +445,7 @@ class ToolVersionListGrid( grids.Grid ): toolbox = trans.app.toolbox if toolbox.has_tool( tool_version.tool_id, exact=True ): link = url_for( controller='tool_runner', tool_id=tool_version.tool_id ) - link_str = '' % link + link_str = '' % link return '
%s%s
' % ( link_str, tool_version.tool_id ) return tool_version.tool_id @@ -455,8 +455,8 @@ class ToolVersionListGrid( grids.Grid ): toolbox = trans.app.toolbox for tool_id in tool_version.get_version_ids( trans.app ): if toolbox.has_tool( tool_id, exact=True ): - link = url_for( controller='tool_runner', tool_id=tool_version.tool_id ) - link_str = '' % link + link = url_for( controller='tool_runner', tool_id=tool_id ) + link_str = '' % link tool_ids_str += '
%s%s

' % ( link_str, tool_id ) else: tool_ids_str += '%s
' % tool_id