diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py b/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py index a4e747ff8754069600f617166fc08ac65592720d..94cd5f7d17f469cf60b5d0bc9dc688c6a70108e5 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py @@ -1313,18 +1313,18 @@ def _create_preprocessing_output_dataproducts_and_transforms(pipeline_subtask: S # TODO: use existing and reasonable selection and specification templates for output when we have those, for now, use "empty" dataproduct_specifications_template = DataproductSpecificationsTemplate.objects.get(name="visibilities") dataproduct_feedback_template = DataproductFeedbackTemplate.objects.get(name="empty") + directory = _output_root_directory(pipeline_subtask) + "uv/" # input:output mapping is 1:1 - input_dps = list(pipeline_subtask_input.dataproducts.all()) output_dp_objects = [] - for input_dp in input_dps: + for input_dp in input_dataproducts: if '_' in input_dp.filename and input_dp.filename.startswith('L'): filename = "L%s_%s" % (pipeline_subtask.pk, input_dp.filename.split('_', 1)[1]) else: filename = "L%s_%s" % (pipeline_subtask.pk, input_dp.filename) output_dp = Dataproduct(filename=filename, - directory=input_dp.directory.replace(str(pipeline_subtask_input.producer.subtask.pk), str(pipeline_subtask.pk)), + directory=directory, dataformat=dataformat, datatype=datatype, producer=pipeline_subtask_output, @@ -1469,7 +1469,7 @@ def schedule_pipeline_subtask(pipeline_subtask: Subtask): dataproducts = [dataproduct for dataproduct in pipeline_subtask_input.producer.dataproducts.all() if specifications_doc_meets_selection_doc(dataproduct.specifications_doc, pipeline_subtask_input.selection_doc)] pipeline_subtask_input.dataproducts.set(dataproducts) - input_dataproducts.append(dataproducts) + input_dataproducts.extend(dataproducts) # step 3: create output dataproducts, and link these to the output if pipeline_subtask.specifications_template.name == "pipeline control":