From ae23502082e06cd0e33a19672dc8c9e9a9f5ff49 Mon Sep 17 00:00:00 2001 From: luc Date: Fri, 24 Jan 2025 16:13:11 -0500 Subject: [PATCH] fix folder exists issue for re-delivery --- scripts/deliver_pipeline.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/scripts/deliver_pipeline.py b/scripts/deliver_pipeline.py index 8b7151f..3c000a4 100644 --- a/scripts/deliver_pipeline.py +++ b/scripts/deliver_pipeline.py @@ -75,7 +75,10 @@ def deliver_pipeline_output(project, pi, requestName): destination = delivery_folder + "/" + sample print("copy {}".format(sample_path)) if os.path.isdir(sample_path): - shutil.copytree(sample_path, destination, symlinks=True, dirs_exist_ok=True) + if os.path.exists(destination): + print("folder exists, skip {}".format(sample_path)) + else: + shutil.copytree(sample_path, destination, symlinks=True, dirs_exist_ok=True) else: cmd = "cp {} {}".format(sample_path, destination) print(cmd) @@ -92,13 +95,18 @@ def deliver_pipeline_output(project, pi, requestName): sample_name = folder.split("/")[-1] sample_delivery_name = cellranger_delivery_folder + "/" + sample_name print("copy {}".format(folder)) - shutil.copytree(folder, sample_delivery_name, symlinks=True, dirs_exist_ok=True) + if os.path.exists(sample_delivery_name): + print("folder exists, skip {}".format(folder)) + else: + shutil.copytree(folder, sample_delivery_name, symlinks=True, dirs_exist_ok=True) if requestName == "SpatialTranscriptomics" and os.path.exists(delivery_folder + "/cellranger"): # copy tiff file folder for spatial project if pipeline exists tiff_folder = "/igo/work/igo/TIFF_Images/Project_" + project if os.path.exists(tiff_folder): destination_file = delivery_folder + "/cellranger/tiff_images" + if os.path.exists(destination_file): + shutil.rmtree(destination_file) shutil.copytree(tiff_folder, destination_file, dirs_exist_ok=True) return "Completed pipeline delivery"