From 3d0365b994180c0030a26382fbf02e57c21c653c Mon Sep 17 00:00:00 2001 From: Sara Sjunnebo Date: Mon, 24 Nov 2025 16:21:38 +0100 Subject: [PATCH 1/3] Backup teton runs to PDC --- taca/backup/backup.py | 7 ++++++- taca/utils/filesystem.py | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/taca/backup/backup.py b/taca/backup/backup.py index 3643b244..695ca4d1 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 = "" 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 From 0fc0f5375def8bcea9c0e6af2f197ca172617b95 Mon Sep 17 00:00:00 2001 From: Sara Sjunnebo Date: Mon, 24 Nov 2025 16:26:29 +0100 Subject: [PATCH 2/3] Also log when uploaded --- taca/backup/backup.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/taca/backup/backup.py b/taca/backup/backup.py index 695ca4d1..c281eb80 100644 --- a/taca/backup/backup.py +++ b/taca/backup/backup.py @@ -281,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" From ccccad223da01cf34368511bf6416b02fc517607 Mon Sep 17 00:00:00 2001 From: Sara Sjunnebo Date: Thu, 27 Nov 2025 11:58:56 +0100 Subject: [PATCH 3/3] Versioning --- VERSIONLOG.md | 4 ++++ taca/__init__.py | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) 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"