Warning

This document is for an in-development version 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.

galaxy.tool_util.deps.container_resolvers package

The module defines the abstract interface for resolving container images for tool execution.

class galaxy.tool_util.deps.container_resolvers.ContainerResolver(app_info=None, **kwds)[source]

Bases: galaxy.util.dictifiable.Dictifiable

Description of a technique for resolving container images for tool execution.

dict_collection_visible_keys = ['resolver_type', 'can_uninstall_dependencies']
can_uninstall_dependencies = False
__init__(app_info=None, **kwds)[source]

Default initializer for ContainerResolver subclasses.

resolve(enabled_container_types, tool_info, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.

resolver_type

Short label for the type of container resolution.

Submodules

galaxy.tool_util.deps.container_resolvers.explicit module

This module describes the ExplicitContainerResolver ContainerResolver plugin.

class galaxy.tool_util.deps.container_resolvers.explicit.ExplicitContainerResolver(app_info=None, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

Find explicit containers referenced in the tool description (e.g. tool XML file) if present.

resolver_type = 'explicit'
resolve(enabled_container_types, tool_info, **kwds)[source]

Find a container explicitly mentioned in tool description.

This ignores the tool requirements and assumes the tool author crafted a correct container.

class galaxy.tool_util.deps.container_resolvers.explicit.ExplicitSingularityContainerResolver(app_info=None, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.explicit.ExplicitContainerResolver

resolver_type = 'explicit_singularity'
container_type = 'singularity'
resolve(enabled_container_types, tool_info, **kwds)[source]

Find a container explicitly mentioned in tool description.

This ignores the tool requirements and assumes the tool author crafted a correct container. We use singularity here to fetch docker containers, hence the container_description hack here.

galaxy.tool_util.deps.container_resolvers.mulled module

This module describes the MulledContainerResolver ContainerResolver plugin.

class galaxy.tool_util.deps.container_resolvers.mulled.CachedMulledDockerContainerResolver(app_info=None, namespace='biocontainers', hash_func='v2', **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

resolver_type = 'cached_mulled'
container_type = 'docker'
shell = '/bin/bash'
__init__(app_info=None, namespace='biocontainers', hash_func='v2', **kwds)[source]

Default initializer for ContainerResolver subclasses.

resolve(enabled_container_types, tool_info, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.

class galaxy.tool_util.deps.container_resolvers.mulled.CachedMulledSingularityContainerResolver(app_info=None, hash_func='v2', **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

resolver_type = 'cached_mulled_singularity'
container_type = 'singularity'
shell = '/bin/bash'
__init__(app_info=None, hash_func='v2', **kwds)[source]

Default initializer for ContainerResolver subclasses.

resolve(enabled_container_types, tool_info, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.

class galaxy.tool_util.deps.container_resolvers.mulled.MulledDockerContainerResolver(app_info=None, namespace='biocontainers', hash_func='v2', auto_install=True, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

Look for mulled images matching tool dependencies.

resolver_type = 'mulled'
container_type = 'docker'
shell = '/bin/bash'
protocol = None
__init__(app_info=None, namespace='biocontainers', hash_func='v2', auto_install=True, **kwds)[source]

Default initializer for ContainerResolver subclasses.

cached_container_description(targets, namespace, hash_func)[source]
pull(container)[source]
resolve(enabled_container_types, tool_info, install=False, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.

class galaxy.tool_util.deps.container_resolvers.mulled.MulledSingularityContainerResolver(app_info=None, namespace='biocontainers', hash_func='v2', auto_install=True, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.mulled.MulledDockerContainerResolver

resolver_type = 'mulled_singularity'
container_type = 'singularity'
protocol = 'docker://'
__init__(app_info=None, namespace='biocontainers', hash_func='v2', auto_install=True, **kwds)[source]

Default initializer for ContainerResolver subclasses.

cached_container_description(targets, namespace, hash_func)[source]
pull(container)[source]
class galaxy.tool_util.deps.container_resolvers.mulled.BuildMulledDockerContainerResolver(app_info=None, namespace='local', hash_func='v2', auto_install=True, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

Build for Docker mulled images matching tool dependencies.

resolver_type = 'build_mulled'
container_type = 'docker'
shell = '/bin/bash'
__init__(app_info=None, namespace='local', hash_func='v2', auto_install=True, **kwds)[source]

Default initializer for ContainerResolver subclasses.

resolve(enabled_container_types, tool_info, install=False, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.

class galaxy.tool_util.deps.container_resolvers.mulled.BuildMulledSingularityContainerResolver(app_info=None, hash_func='v2', auto_install=True, **kwds)[source]

Bases: galaxy.tool_util.deps.container_resolvers.ContainerResolver

Build for Singularity mulled images matching tool dependencies.

resolver_type = 'build_mulled_singularity'
container_type = 'singularity'
shell = '/bin/bash'
__init__(app_info=None, hash_func='v2', auto_install=True, **kwds)[source]

Default initializer for ContainerResolver subclasses.

resolve(enabled_container_types, tool_info, install=False, **kwds)[source]

Find a container matching all supplied requirements for tool.

The supplied argument is a galaxy.tool_util.deps.containers.ToolInfo description of the tool and its requirements.