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.

Source code for galaxy.tools.biotools

"""Adapt Galaxy-agnostic abstraction galaxy.tool_util.biotools to Galaxy config and dependencies."""

from beaker.cache import CacheManager
from beaker.util import parse_cache_config_options

from galaxy.tool_util.biotools import (
    BiotoolsMetadataSource,
    BiotoolsMetadataSourceConfig,
    get_biotools_metadata_source,
)


[docs]def get_galaxy_biotools_metadata_source(config) -> BiotoolsMetadataSource: """Build a BiotoolsMetadataSource from a Galaxy configuration object.""" biotools_metadata_source_config = BiotoolsMetadataSourceConfig() biotools_metadata_source_config.content_directory = config.biotools_content_directory biotools_metadata_source_config.use_api = config.biotools_use_api cache_opts = { "cache.type": getattr(config, "biotools_service_cache_type", "file"), "cache.data_dir": getattr(config, "biotools_service_cache_data_dir", None), "cache.lock_dir": getattr(config, "biotools_service_cache_lock_dir", None), } cache = CacheManager(**parse_cache_config_options(cache_opts)).get_cache("doi") biotools_metadata_source_config.cache = cache return get_biotools_metadata_source(biotools_metadata_source_config)