Warning
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.
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:
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: AppInfo, **kwds)[source]
Bases:
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
- read_only = True
- __init__(app_info: AppInfo, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- abstract resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
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: AppInfo, **kwds)[source]
Bases:
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: AppInfo, **kwds)[source]
Bases:
ExplicitContainerResolver- resolver_type = 'explicit_singularity'
- container_type = 'singularity'
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[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.CachedExplicitSingularityContainerResolver(app_info: AppInfo, **kwargs)[source]
Bases:
CliContainerResolver- resolver_type = 'cached_explicit_singularity'
- container_type = 'singularity'
- cli = 'singularity'
- __init__(app_info: AppInfo, **kwargs) None[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, install: bool = False, **kwds) ContainerDescription | None[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: AppInfo, identifier: str = '', **kwds)[source]
Bases:
BaseAdminConfiguredContainerResolverSpecify an explicit, identified container as a Docker container resolver.
- resolver_type = 'fallback'
- container_type = 'docker'
- __init__(app_info: AppInfo, identifier: str = '', **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.explicit.FallbackSingularityContainerResolver(app_info: AppInfo, identifier: str = '', **kwds)[source]
Bases:
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: AppInfo, identifier: str = '', **kwds)[source]
Bases:
FallbackContainerResolver- resolver_type = 'fallback_no_requirements'
- class galaxy.tool_util.deps.container_resolvers.explicit.FallbackNoRequirementsSingularityContainerResolver(app_info: AppInfo, identifier: str = '', **kwds)[source]
Bases:
FallbackNoRequirementsContainerResolver- resolver_type = 'fallback_no_requirements_singularity'
- container_type = 'singularity'
- class galaxy.tool_util.deps.container_resolvers.explicit.MappingContainerResolver(app_info: AppInfo, **kwds)[source]
Bases:
BaseAdminConfiguredContainerResolver- resolver_type = 'mapping'
- __init__(app_info: AppInfo, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.explicit.RequiresGalaxyEnvironmentContainerResolver(app_info: AppInfo, identifier: str = '', **kwds)[source]
Bases:
FallbackContainerResolver- resolver_type = 'requires_galaxy_environment'
- class galaxy.tool_util.deps.container_resolvers.explicit.RequiresGalaxyEnvironmentSingularityContainerResolver(app_info: AppInfo, identifier: str = '', **kwds)[source]
Bases:
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: AppInfo, namespace: str = 'biocontainers', hash_func: typing_extensions.Literal[v1, v2] = 'v2', **kwds)[source]
Bases:
CliContainerResolver- resolver_type = 'cached_mulled'
- shell = '/bin/bash'
- __init__(app_info: AppInfo, namespace: str = 'biocontainers', hash_func: typing_extensions.Literal[v1, v2] = 'v2', **kwds)[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.mulled.CachedMulledSingularityContainerResolver(app_info: AppInfo, hash_func: typing_extensions.Literal[v1, v2] = 'v2', **kwargs)[source]
Bases:
SingularityCliContainerResolver- resolver_type = 'cached_mulled_singularity'
- shell = '/bin/bash'
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.mulled.MulledDockerContainerResolver(app_info: AppInfo, namespace: str = 'biocontainers', hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds)[source]
Bases:
CliContainerResolverLook for mulled images matching tool dependencies.
- resolver_type = 'mulled'
- shell = '/bin/bash'
- __init__(app_info: AppInfo, namespace: str = 'biocontainers', hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- cached_container_description(targets: List[CondaTarget], namespace: str, hash_func: typing_extensions.Literal[v1, v2], resolution_cache: ResolutionCache | None = None) ContainerDescription | None[source]
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, install: bool = False, session: Session | None = None, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.mulled.MulledSingularityContainerResolver(app_info: AppInfo, hash_func: typing_extensions.Literal[v1, v2] = 'v2', namespace: str = 'biocontainers', auto_install: bool = True, **kwds)[source]
Bases:
SingularityCliContainerResolver,MulledDockerContainerResolver- resolver_type = 'mulled_singularity'
- __init__(app_info: AppInfo, hash_func: typing_extensions.Literal[v1, v2] = 'v2', namespace: str = 'biocontainers', auto_install: bool = True, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- cached_container_description(targets: List[CondaTarget], namespace: str, hash_func: typing_extensions.Literal[v1, v2], resolution_cache: ResolutionCache | None = None) ContainerDescription | None[source]
- class galaxy.tool_util.deps.container_resolvers.mulled.BuildMulledDockerContainerResolver(app_info: AppInfo, namespace: str = 'local', hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds)[source]
Bases:
CliContainerResolverBuild for Docker mulled images matching tool dependencies.
- resolver_type = 'build_mulled'
- shell = '/bin/bash'
- builds_on_resolution = True
- __init__(app_info: AppInfo, namespace: str = 'local', hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, install: bool = False, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.
- class galaxy.tool_util.deps.container_resolvers.mulled.BuildMulledSingularityContainerResolver(app_info: AppInfo, hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds)[source]
Bases:
SingularityCliContainerResolverBuild for Singularity mulled images matching tool dependencies.
- resolver_type = 'build_mulled_singularity'
- shell = '/bin/bash'
- builds_on_resolution = True
- __init__(app_info: AppInfo, hash_func: typing_extensions.Literal[v1, v2] = 'v2', auto_install: bool = True, **kwds) None[source]
Default initializer for
ContainerResolversubclasses.
- resolve(enabled_container_types: Container[str], tool_info: ToolInfo, install: bool = False, **kwds) ContainerDescription | None[source]
Find a container matching all supplied requirements for tool.
The supplied argument is a
galaxy.tool_util.deps.dependencies.ToolInfodescription of the tool and its requirements.