Merge pull request #1632 from zipho/resolver_dependencies

added resolver dependency display to the tool view page
This commit is contained in:
John Chilton
2016-02-08 13:42:03 -05:00
4 changed files with 48 additions and 1 deletions
@@ -21,7 +21,7 @@ class ToolDependenciesAPIController( BaseAPIController ):
@expose_api
@require_admin
def index(self, trans):
def index(self, trans, **kwd):
"""
GET /api/dependencies_resolvers
"""
@@ -71,6 +71,8 @@ class ToolDependenciesAPIController( BaseAPIController ):
"""
return self._view.resolver_dependency(id, **kwds)
@expose_api
@require_admin
def manager_dependency(self, trans, **kwds):
"""
GET /api/dependencies_resolvers/dependency
@@ -30,6 +30,7 @@ from tool_shed.util import tool_dependency_util
from tool_shed.util import tool_util
from tool_shed.util import workflow_util
from tool_shed.util.web_util import escape
from galaxy.tools.deps import views
log = logging.getLogger( __name__ )
@@ -754,11 +755,14 @@ class AdminToolshed( AdminGalaxy ):
repository=repository,
reinstalling=False,
required_repo_info_dicts=None )
view = views.DependencyResolversView(self.app)
resolver_dependency_dict = view.manager_dependency(name=name)
return trans.fill_template( '/admin/tool_shed_repository/manage_repository.mako',
repository=repository,
description=description,
repo_files_dir=repo_files_dir,
containers_dict=containers_dict,
resolver_dependency_dict=resolver_dependency_dict,
message=message,
status=status )
@@ -76,6 +76,7 @@ ${render_galaxy_repository_actions( repository )}
</div>
</div>
<p/>
${render_resolver_dependency_items(resolver_dependency_dict )}
%if not in_error_state:
${render_repository_items( repository.metadata, containers_dict, can_set_metadata=False, render_repository_actions_for='galaxy' )}
%endif
@@ -1071,6 +1071,46 @@
%>
</%def>
<%def name="render_tool_dependency_resolver( resolver_dependencies )">
<tr class="datasetRow">
<td style="padding-left: 20 px;">
<table class="grid" id="module_resolver_environment">
%if resolver_dependencies['model_class'] == 'NullDependency':
<tr>
<td><b> Dependency was not resolved by any resolver module.</b></td>
</tr>
%else:
<tr>
<td><b>Dependency Resolver </b></td>
<td> ${resolver_dependencies['model_class'] | h}</td>
</tr>
<tr>
<td><b>Exact </b></td>
<td> ${resolver_dependencies['exact'] | h}</td>
</tr>
<tr>
<td><b>Dependency Type</b></td>
<td> ${resolver_dependencies['dependency_type'] | h}</td>
</tr>
%endif
</table>
</td>
</tr>
</%def>
<%def name="render_resolver_dependency_items( resolver_dependencies )">
%if resolver_dependencies:
<div class="toolForm">
<div class="toolFormTitle">Dependency Resolver Details</div>
<div class="toolFormBody">
<table cellspacing="2" cellpadding="2" border="0" width="100%" class="tables container-table" id="module_resolvers">
${render_tool_dependency_resolver( resolver_dependencies)}
</table>
</div>
</div>
%endif
</%def>
<%def name="render_repository_items( metadata, containers_dict, can_set_metadata=False, render_repository_actions_for='tool_shed' )">
<%
from tool_shed.util.encoding_util import tool_shed_encode