import sys, os, logging # shut some mouths... import botocore logging.getLogger("elasticsearch").setLevel(logging.ERROR) logging.getLogger("urllib3").setLevel(logging.ERROR) logging.getLogger("requests").setLevel(logging.ERROR) logging.getLogger("tornado").setLevel(logging.ERROR) logging.getLogger("botocore").setLevel(logging.ERROR) import config, biothings from biothings.utils.version import set_versions from standalone.utils.version import set_standalone_version # fill app & autohub versions set_versions(config, ".") set_standalone_version(config, "standalone") biothings.config_for_app(config) # now use biothings' config wrapper config = biothings.config logging.info("Hub DB backend: %s" % config.HUB_DB_BACKEND) logging.info("Hub database: %s" % config.DATA_HUB_DB_DATABASE) from standalone.hub import DynamicIndexerFactory from hub import PendingHubServer server = PendingHubServer(config.VERSION_URLS, indexer_factory=DynamicIndexerFactory( config.VERSION_URLS, config.ES_HOST, suffix=""), source_list=None, name="Pending API Hub (frontend)",
import biothings import config import hub.dataload.sources from biothings.hub import HubServer from biothings.utils.version import set_versions import os import logging # shut some mouths logging.getLogger("botocore").setLevel(logging.ERROR) logging.getLogger("boto3").setLevel(logging.ERROR) logging.getLogger("s3transfer").setLevel(logging.ERROR) logging.getLogger("urllib3").setLevel(logging.ERROR) app_folder, _src = os.path.split(os.path.split(os.path.abspath(__file__))[0]) set_versions(config, app_folder) biothings.config_for_app(config) logging = config.logger server = HubServer(hub.dataload.sources, name="BioThings Studio") # import ptvsd # Allow other computers to attach to ptvsd at this IP address and port. # ptvsd.enable_attach(address=('1.2.3.4', 3000), redirect_output=True) # Pause the program until a remote debugger is attached # ptvsd.wait_for_attach() if __name__ == "__main__": # vanilla or as a launcher of an API
#!/usr/bin/env python import os, logging from functools import partial import config, biothings from biothings.utils.version import set_versions app_folder,_src = os.path.split(os.path.split(os.path.split(os.path.abspath(__file__))[0])[0]) set_versions(config,app_folder) biothings.config_for_app(config) from biothings.hub import HubServer import biothings.hub.databuild.differ as differ class MyChemHubServer(HubServer): def configure_build_manager(self): import biothings.hub.databuild.builder as builder from hub.databuild.builder import MyChemDataBuilder # set specific managers build_manager = builder.BuilderManager(builder_class=MyChemDataBuilder,job_manager=self.managers["job_manager"]) build_manager.configure() self.managers["build_manager"] = build_manager self.logger.info("Using custom builder %s" % MyChemDataBuilder) def configure_sync_manager(self): from biothings.hub.databuild.syncer import SyncerManager, \ ThrottledESJsonDiffSyncer, ThrottledESJsonDiffSelfContainedSyncer # prod