about summary refs log tree commit diff
path: root/scripts/split_into_arrays.cwl
diff options
context:
space:
mode:
authorlltommy2020-07-07 23:58:50 +0200
committerlltommy2020-07-07 23:58:50 +0200
commitc8ffc952a99dc0a2d1266cdc0636711ec63e8bfb (patch)
treed8672cca90c8469f07c20cb80fdbf0439913623a /scripts/split_into_arrays.cwl
parent027d7bd6dd89c62a1e81bbda0e6ef7f27cbb3920 (diff)
parentb994b59963248a301e1248f792f21d9ab2ea8a3f (diff)
downloadbh20-seq-resource-c8ffc952a99dc0a2d1266cdc0636711ec63e8bfb.tar.gz
bh20-seq-resource-c8ffc952a99dc0a2d1266cdc0636711ec63e8bfb.tar.lz
bh20-seq-resource-c8ffc952a99dc0a2d1266cdc0636711ec63e8bfb.zip
Merge branch 'master' of https://github.com/arvados/bh20-seq-resource
Diffstat (limited to 'scripts/split_into_arrays.cwl')
-rw-r--r--scripts/split_into_arrays.cwl30
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/split_into_arrays.cwl b/scripts/split_into_arrays.cwl
new file mode 100644
index 0000000..102fe7d
--- /dev/null
+++ b/scripts/split_into_arrays.cwl
@@ -0,0 +1,30 @@
+cwlVersion: v1.1
+class: ExpressionTool
+requirements:
+  InlineJavascriptRequirement: {}
+inputs:
+  dir:
+    type: Directory
+    loadListing: shallow_listing
+outputs:
+  fasta: File[]
+  metadata: File[]
+expression: |
+  ${
+  var dir = inputs.dir;
+  var fasta = [];
+  var metadata = [];
+  dir.listing.sort(function(a, b) { return a.basename < b.basename; });
+  for (var i = 0; i < dir.listing.length; i++) {
+    if (dir.listing[i].basename.substr(-6) == ".fasta") {
+      fasta.push(dir.listing[i]);
+    }
+    if (dir.listing[i].basename.substr(-5) == ".yaml") {
+      metadata.push(dir.listing[i]);
+    }
+  }
+  if (fasta.length != metadata.length) {
+    throw "They dont match";
+  }
+  return {"fasta": fasta, "metadata": metadata};
+  }