diff --git a/VERSIONLOG.md b/VERSIONLOG.md index 98eb572a..14ed2542 100644 --- a/VERSIONLOG.md +++ b/VERSIONLOG.md @@ -1,5 +1,9 @@ # TACA Version Log +##20251127.1 + +Enable archiving of Aviti Teton runs to PDC + ##20251121.1 Exclude pod5 from delivery by default diff --git a/taca/__init__.py b/taca/__init__.py index e67efcfd..2cc41b5c 100644 --- a/taca/__init__.py +++ b/taca/__init__.py @@ -1,3 +1,3 @@ """Main TACA module""" -__version__ = "1.6.13" +__version__ = "1.6.14" diff --git a/taca/backup/backup.py b/taca/backup/backup.py index 3643b244..c281eb80 100644 --- a/taca/backup/backup.py +++ b/taca/backup/backup.py @@ -72,6 +72,7 @@ def collect_runs(self, ext=None, filter_by_ext=False): re.match(filesystem.RUN_RE_ILLUMINA, run.name) or re.match(filesystem.RUN_RE_ONT, run.name) or re.match(filesystem.RUN_RE_ELEMENT, run.name) + or re.match(filesystem.RUN_RE_TETON, run.name) ): logger.error(f"Given run {self.run} did not match a FC pattern") raise SystemExit @@ -95,6 +96,7 @@ def collect_runs(self, ext=None, filter_by_ext=False): re.match(filesystem.RUN_RE_ILLUMINA, item) or re.match(filesystem.RUN_RE_ONT, item) or re.match(filesystem.RUN_RE_ELEMENT, item) + or re.match(filesystem.RUN_RE_TETON, item) ) and item not in self.runs: run_type = self._get_run_type(item) archive_path = self.archive_dirs[run_type] @@ -124,6 +126,7 @@ def avail_disk_space(self, path, run): re.match(filesystem.RUN_RE_ILLUMINA, run_dir) or re.match(filesystem.RUN_RE_ONT, run_dir) or re.match(filesystem.RUN_RE_ELEMENT, run_dir) + or re.match(filesystem.RUN_RE_TETON, run_dir) ): continue if not ( @@ -196,7 +199,9 @@ def _get_run_type(self, run): "^(\d{8})_(\d{4})_([1-3][A-H])_([0-9a-zA-Z]+)_([0-9a-zA-Z]+)$", run ): run_type = "promethion" - elif re.match(filesystem.RUN_RE_ELEMENT, run): + elif re.match(filesystem.RUN_RE_ELEMENT, run) or re.match( + filesystem.RUN_RE_TETON, run + ): run_type = "aviti" else: run_type = "" @@ -276,7 +281,9 @@ def _clean_tmp_files(self, files): def _log_pdc_statusdb(self, run): """Log the time stamp in statusDB if a file is succussfully sent to PDC.""" - if re.match(filesystem.RUN_RE_ELEMENT, run): + if re.match(filesystem.RUN_RE_ELEMENT, run) or re.match( + filesystem.RUN_RE_TETON, run + ): try: element_db_connection = statusdb.ElementRunsConnection( self.couch_info, dbname="element_runs" diff --git a/taca/utils/filesystem.py b/taca/utils/filesystem.py index e872ea50..b539f365 100644 --- a/taca/utils/filesystem.py +++ b/taca/utils/filesystem.py @@ -7,6 +7,7 @@ RUN_RE_ILLUMINA = r"^\d{6,8}_[a-zA-Z\d\-]+_\d{2,}_[AB0][A-Z\d\-]+$" RUN_RE_ONT = r"^(\d{8})_(\d{4})_([0-9a-zA-Z]+)_([0-9a-zA-Z]+)_([0-9a-zA-Z]+)$" RUN_RE_ELEMENT = r"^\d{8}_AV\d{6}_[AB]\d{10}$" +RUN_RE_TETON = r"^\d{8}_AV\d{6}_[AB]P\d{5}$" @contextlib.contextmanager