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.ResolutionCache(**kwds)[source]¶ Bases:
galaxy.util.bunch.BunchSimple cache for duplicated computation created once per set of requests (likely web request in Galaxy context).
This should not be assumed to be thread safe - resolution using a given cache should all occur one resolution at a time in a single thread.
-
class
galaxy.tool_util.deps.container_resolvers.ContainerResolver(app_info=None, **kwds)[source]¶ Bases:
galaxy.util.dictifiable.DictifiableDescription of a technique for resolving container images for tool execution.
-
dict_collection_visible_keys= ['resolver_type', 'can_uninstall_dependencies', 'builds_on_resolution']¶
-
can_uninstall_dependencies= False¶
-
builds_on_resolution= False¶
-
resolve(enabled_container_types, tool_info, resolution_cache=None, **kwds)[source]¶ Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.containers.ToolInfodescription 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.ContainerResolverFind explicit containers referenced in the tool description (e.g. tool XML file) if present.
-
resolver_type= 'explicit'¶
-
-
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.
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.FallbackContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.BaseAdminConfiguredContainerResolverSpecify an explicit, identified container as a Docker container resolver.
-
resolver_type= 'fallback'¶
-
container_type= 'docker'¶
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.FallbackSingularityContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.FallbackContainerResolverSpecify an explicit, identified container as a Singularity container resolver.
-
resolver_type= 'fallback_singularity'¶
-
container_type= 'singularity'¶
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.FallbackNoRequirementsContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.FallbackContainerResolver-
resolver_type= 'fallback_no_requirements'¶
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.FallbackNoRequirementsSingularityContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.FallbackNoRequirementsContainerResolver-
resolver_type= 'fallback_no_requirements_singularity'¶
-
container_type= 'singularity'¶
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.RequiresGalaxyEnvironmentContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.FallbackContainerResolver-
resolver_type= 'requires_galaxy_environment'¶
-
-
class
galaxy.tool_util.deps.container_resolvers.explicit.RequiresGalaxyEnvironmentSingularityContainerResolver(app_info=None, identifier='', **kwds)[source]¶ Bases:
galaxy.tool_util.deps.container_resolvers.explicit.RequiresGalaxyEnvironmentContainerResolver-
resolver_type= 'requires_galaxy_environment_singularity'¶
-
container_type= 'singularity'¶
-
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'¶
-
-
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'¶
-
-
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.ContainerResolverLook for mulled images matching tool dependencies.
-
resolver_type= 'mulled'¶
-
container_type= 'docker'¶
-
shell= '/bin/bash'¶
-
protocol= None¶
-
-
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://'¶
-
-
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.ContainerResolverBuild for Docker mulled images matching tool dependencies.
-
resolver_type= 'build_mulled'¶
-
container_type= 'docker'¶
-
shell= '/bin/bash'¶
-
builds_on_resolution= True¶
-
-
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.ContainerResolverBuild for Singularity mulled images matching tool dependencies.
-
resolver_type= 'build_mulled_singularity'¶
-
container_type= 'singularity'¶
-
shell= '/bin/bash'¶
-
builds_on_resolution= True¶
-