diff --git a/settings/.env.dev b/settings/.env.dev index 3fd7bc1..49071b3 100644 --- a/settings/.env.dev +++ b/settings/.env.dev @@ -37,3 +37,9 @@ SEQREPO_ROOT_DIR=/usr/local/share/seqrepo/2024-12-20 #################################################################################################### ENSEMBL_API_URL=https://rest.ensembl.org + +#################################################################################################### +# Environment variables for cdot +#################################################################################################### + +CDOT_URL=http://cdot-rest:8000 diff --git a/src/dcd_mapping/align.py b/src/dcd_mapping/align.py index 18325d5..1d25546 100644 --- a/src/dcd_mapping/align.py +++ b/src/dcd_mapping/align.py @@ -21,7 +21,7 @@ ) from dcd_mapping.lookup import get_chromosome_identifier, get_gene_location from dcd_mapping.mavedb_data import LOCAL_STORE_PATH, patch_target_sequence_type -from dcd_mapping.resource_utils import http_download +from dcd_mapping.resource_utils import CDOT_URL, http_download from dcd_mapping.schemas import ( AlignmentResult, GeneLocation, @@ -377,7 +377,7 @@ def fetch_alignment( if accession_id.startswith(("NP", "ENSP", "NC_")): alignment_results[accession_id] = None else: - url = f"https://cdot.cc/transcript/{accession_id}" + url = f"{CDOT_URL}/transcript/{accession_id}" r = requests.get(url, timeout=30) try: diff --git a/src/dcd_mapping/lookup.py b/src/dcd_mapping/lookup.py index 017135e..08cf75b 100644 --- a/src/dcd_mapping/lookup.py +++ b/src/dcd_mapping/lookup.py @@ -51,7 +51,7 @@ from gene.schemas import MatchType, SourceName from dcd_mapping.exceptions import DataLookupError -from dcd_mapping.resource_utils import ENSEMBL_API_URL, request_with_backoff +from dcd_mapping.resource_utils import CDOT_URL, ENSEMBL_API_URL, request_with_backoff from dcd_mapping.schemas import ( GeneLocation, ManeDescription, @@ -90,7 +90,7 @@ def seqfetcher() -> ChainedSeqFetcher: def cdot_rest() -> RESTDataProvider: - return RESTDataProvider(seqfetcher=seqfetcher()) + return RESTDataProvider(url=CDOT_URL, seqfetcher=seqfetcher()) # ---------------------------------- Global ---------------------------------- # diff --git a/src/dcd_mapping/resource_utils.py b/src/dcd_mapping/resource_utils.py index 01a67cd..6b610cf 100644 --- a/src/dcd_mapping/resource_utils.py +++ b/src/dcd_mapping/resource_utils.py @@ -10,6 +10,7 @@ MAVEDB_API_KEY = os.environ.get("MAVEDB_API_KEY") MAVEDB_BASE_URL = os.environ.get("MAVEDB_BASE_URL") ENSEMBL_API_URL = os.environ.get("ENSEMBL_API_URL", "https://rest.ensembl.org") # TODO +CDOT_URL = os.environ.get("CDOT_URL", "cdot-rest:8000") LOCAL_STORE_PATH = Path( os.environ.get( diff --git a/src/dcd_mapping/vrs_map.py b/src/dcd_mapping/vrs_map.py index 18642ff..7bf3d15 100644 --- a/src/dcd_mapping/vrs_map.py +++ b/src/dcd_mapping/vrs_map.py @@ -31,6 +31,7 @@ get_seqrepo, translate_hgvs_to_vrs, ) +from dcd_mapping.resource_utils import CDOT_URL from dcd_mapping.schemas import ( AlignmentResult, MappedScore, @@ -771,7 +772,7 @@ def store_accession( ) -> None: namespace = infer_namespace(accession_id) alias_dict_list = [{"namespace": namespace, "alias": accession_id}] - cd = cdot_rest() + cd = cdot_rest(url=CDOT_URL) sequence = cd.get_seq(accession_id) sr = get_seqrepo() sr.sr.store(sequence, alias_dict_list)