From be876f99ab2b1de9129a70f94ce022c2a8a59cdd Mon Sep 17 00:00:00 2001
From: Dominik Brilhaus <brilhaus@nfdi4plants.org>
Date: Thu, 20 Mar 2025 17:23:10 +0100
Subject: [PATCH] add more cwl metadata

---
 workflows/kallisto/gather-dirs.cwl    |  9 ++++++
 workflows/kallisto/kallisto-index.cwl |  6 +++-
 workflows/kallisto/kallisto-quant.cwl | 41 ++++++++++++++++++++++++++-
 workflows/kallisto/kallisto-test.cwl  | 18 ------------
 4 files changed, 54 insertions(+), 20 deletions(-)
 delete mode 100644 workflows/kallisto/kallisto-test.cwl

diff --git a/workflows/kallisto/gather-dirs.cwl b/workflows/kallisto/gather-dirs.cwl
index c7a13f5..a11ef77 100644
--- a/workflows/kallisto/gather-dirs.cwl
+++ b/workflows/kallisto/gather-dirs.cwl
@@ -1,12 +1,20 @@
 cwlVersion: v1.2
 class: ExpressionTool
+label: Gather directories
 doc: |
+  Helper tool to organize 
+
   Takes an array of directories (e.g. from a workflow step) and yields them in a destination directory.
+
+  Adapted from: https://github.com/common-workflow-language/cwl-v1.1/blob/a22b7580c6b50e77c0a181ca59d3828dd5c69143/tests/dir7.cwl
+
 requirements:
   - class: InlineJavascriptRequirement
+
 inputs:
   inDirs: Directory[]
   destinationDir: string
+
 expression: |
   ${
     return {"outDir": {
@@ -15,5 +23,6 @@ expression: |
       "listing": inputs.inDirs
     } };
   }
+
 outputs:
   outDir: Directory
\ No newline at end of file
diff --git a/workflows/kallisto/kallisto-index.cwl b/workflows/kallisto/kallisto-index.cwl
index 977cbab..e374a1f 100644
--- a/workflows/kallisto/kallisto-index.cwl
+++ b/workflows/kallisto/kallisto-index.cwl
@@ -4,6 +4,10 @@ class: CommandLineTool
 
 label: Kallisto index
 doc: |
+
+  Docs: https://pachterlab.github.io/kallisto/
+
+
   Builds a kallisto index
 
   Usage: kallisto index [arguments] FASTA-files
@@ -34,7 +38,7 @@ hints:
           - https://identifiers.org/biotools/kallisto 
 
 requirements:        
-  - class: InlineJavascriptRequirement
+  InlineJavascriptRequirement: {}
 
 baseCommand: [kallisto, index]
 
diff --git a/workflows/kallisto/kallisto-quant.cwl b/workflows/kallisto/kallisto-quant.cwl
index 692be58..8da7542 100755
--- a/workflows/kallisto/kallisto-quant.cwl
+++ b/workflows/kallisto/kallisto-quant.cwl
@@ -2,13 +2,48 @@
 cwlVersion: v1.2
 class: CommandLineTool
 
+label: Kallisto quant
+doc: |
+
+  Docs: https://pachterlab.github.io/kallisto/
+
+  Computes equivalence classes for reads and quantifies abundances
+
+  Usage: kallisto quant [arguments] FASTQ-files
+
+  Required arguments:
+  -i, --index=STRING            Filename for the kallisto index to be used for
+                                quantification
+  -o, --output-dir=STRING       Directory to write output to
+
+  Optional arguments:
+  -b, --bootstrap-samples=INT   Number of bootstrap samples (default: 0)
+      --seed=INT                Seed for the bootstrap sampling (default: 42)
+      --plaintext               Output plaintext instead of HDF5
+      --single                  Quantify single-end reads
+      --single-overhang         Include reads where unobserved rest of fragment is
+                                predicted to lie outside a transcript
+      --fr-stranded             Strand specific reads, first read forward
+      --rf-stranded             Strand specific reads, first read reverse
+  -l, --fragment-length=DOUBLE  Estimated average fragment length
+  -s, --sd=DOUBLE               Estimated standard deviation of fragment length
+                                (default: -l, -s values are estimated from paired
+                                end data, but are required when using --single)
+  -p, --priors                  Priors for the EM algorithm, either as raw counts or as
+                                probabilities. Pseudocounts are added to raw reads to
+                                prevent zero valued priors. Supplied in the same order
+                                as the transcripts in the transcriptome
+  -t, --threads=INT             Number of threads to use (default: 1)
+      --verbose                 Print out progress information every 1M proccessed reads
+
+
 hints:
   DockerRequirement:
     dockerPull: quay.io/biocontainers/kallisto:0.51.1--ha4fb952_1
   SoftwareRequirement:
     packages:
       kallisto:
-        version: [ "0.50.0" ]
+        version: [ "0.51.1" ]
         specs: [ https://identifiers.org/biotools/kallisto ]
 
 inputs:
@@ -131,7 +166,11 @@ outputs:
     outputBinding:
       glob: $(runtime.outdir)/$(inputs.QuantOutfolder)
 
+
 $namespaces:
   edam: https://edamontology.org/
+  s: https://schema.org/
 $schemas:
   - https://edamontology.org/EDAM_1.18.owl
+
+s:license: https://spdx.org/licenses/BSD-2-Clause
diff --git a/workflows/kallisto/kallisto-test.cwl b/workflows/kallisto/kallisto-test.cwl
deleted file mode 100644
index 3a05871..0000000
--- a/workflows/kallisto/kallisto-test.cwl
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env cwl-runner
-cwlVersion: v1.2
-class: CommandLineTool
-
-hints:
-  DockerRequirement:
-    dockerPull: quay.io/biocontainers/kallisto:0.50.1--h6de1650_2
-  SoftwareRequirement:
-    packages:
-      kallisto:
-        version: [ "0.50.0" ]
-        specs: [ https://identifiers.org/biotools/kallisto ]
-
-inputs: []
-
-baseCommand: [kallisto]
-
-outputs: []
\ No newline at end of file
-- 
GitLab