From 4e620bb28c459d7b6fedded34bf560b63e398111 Mon Sep 17 00:00:00 2001
From: Timo Millenaar <tmillenaar@gmail.com>
Date: Thu, 22 Aug 2024 13:36:34 +0200
Subject: [PATCH] Make input_storage_manager and already_compressed part of
 summary instead of top level of output json for improved atdb parsing

---
 download_and_compress_pipeline.cwl | 32 ++----------------------------
 steps/format_metrics.cwl           |  6 ++++++
 2 files changed, 8 insertions(+), 30 deletions(-)

diff --git a/download_and_compress_pipeline.cwl b/download_and_compress_pipeline.cwl
index 9a40513..6ad92e4 100644
--- a/download_and_compress_pipeline.cwl
+++ b/download_and_compress_pipeline.cwl
@@ -47,13 +47,6 @@ outputs:
   type: File
   outputSource:
   - combine/inspect_file
-- id: input_storage_manager
-  type: string[]
-  outputSource: compress/input_storage_manager
-- id: already_compressed
-  type: boolean[]
-  outputSource: already_compressed/already_compressed
-
 
 steps:
 - id: fetch_data
@@ -115,30 +108,9 @@ steps:
     source: compress/applied_fixes
   - id: unfixable_issues
     source: compress/unfixable_issues
+  - id: input_storage_manager
+    source: compress/input_storage_manager
   run: steps/format_metrics.cwl
   out:
   - formatted_quality
   - control
-
-- id: already_compressed
-  run:
-    class: ExpressionTool
-    requirements:
-      - class: InlineJavascriptRequirement
-    inputs:
-      - id: input_storage_manager
-        type: string[]
-    outputs:
-      - id: already_compressed
-        type: boolean[]
-    expression: |
-      ${
-        return {
-          already_compressed: inputs.input_storage_manager == "DyscoStorageManager"
-        };
-      }
-  in:
-    - id: input_storage_manager
-      source: compress/input_storage_manager
-  out:
-    - id: already_compressed
\ No newline at end of file
diff --git a/steps/format_metrics.cwl b/steps/format_metrics.cwl
index fe3538c..7863218 100644
--- a/steps/format_metrics.cwl
+++ b/steps/format_metrics.cwl
@@ -27,6 +27,10 @@ inputs:
     items:
       type: array
       items: string
+- id: input_storage_manager
+  type:
+    type: array
+    items: string
 
 outputs:
 - id: formatted_quality
@@ -44,6 +48,8 @@ expression: |
 
     quality['summary']['applied_fixes'] = inputs.applied_fixes[0];
     quality['summary']['unfixable_issues'] = inputs.unfixable_issues[0];
+    quality['summary']['input_storage_manager'] = inputs.input_storage_manager;
+    quality['summary']['already_compressed'] = inputs.input_storage_manager.map(value => value === "DyscoStorageManager");
 
     var control = {
       'keep_input': inputs.msin.map((file, index) => {
-- 
GitLab