From 402bd8999f6280551f2432f4780d648271e8eb74 Mon Sep 17 00:00:00 2001 From: RachelDuffin Date: Thu, 11 Jul 2024 17:05:36 +0100 Subject: [PATCH] Move checking age of runfolder earlier to fix bug --- wscleaner/wscleaner.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/wscleaner/wscleaner.py b/wscleaner/wscleaner.py index 1bc0f9d1..c8426803 100644 --- a/wscleaner/wscleaner.py +++ b/wscleaner/wscleaner.py @@ -147,11 +147,11 @@ def get_runfolders_to_process(self) -> list: ) rf_obj = RunfolderObject(folder_name, RunfolderCleanupConfig.TIMESTAMP) rf_age = rf_obj.age() - if os.path.exists(os.path.join(self.samplesheets_dir, f"{folder_name}_SampleSheet.csv")): - rf_samples_obj = RunfolderSamples(rf_obj, script_logger) - if rf_samples_obj: - if os.path.exists(rf_obj.rtacompletefile_path): - if (rf_age >= self.min_age): + if (rf_age >= self.min_age): + if os.path.exists(os.path.join(self.samplesheets_dir, f"{folder_name}_SampleSheet.csv")): + rf_samples_obj = RunfolderSamples(rf_obj, script_logger) + if rf_samples_obj: + if os.path.exists(rf_obj.rtacompletefile_path): # Catch TSO500 runfolders here (do not contain fastqs) if rf_samples_obj.pipeline == "dev": script_logger.info( @@ -183,16 +183,16 @@ def get_runfolders_to_process(self) -> list: ) else: script_logger.info( - f"{rf_obj.runfolder_name} is < {self.min_age} days old" + f"{rf_obj.runfolder_name} is not a runfolder, or sequencing has not yet finished" ) - else: - script_logger.info( - f"{rf_obj.runfolder_name} is not a runfolder, or sequencing has not yet finished" - ) + else: + script_logger.info( + f"Corresponding SampleSheet for {rf_obj.runfolder_name} could not be located. This is required for analysing for deletion" + ) else: script_logger.info( - f"Corresponding SampleSheet for {rf_obj.runfolder_name} could not be located. This is required for analysing for deletion" - ) + f"{rf_obj.runfolder_name} is < {self.min_age} days old" + ) to_assess = [rf_obj.runfolder_name for runfolder_object in runfolder_objects] all_folders = [folder.split("/")[-1].strip() for folder in folders] to_skip = [folder for folder in all_folders if folder not in to_assess]