11549: Fix container requests so it doesn't mount each file individually,
[arvados.git] / sdk / cwl / arvados_cwl / arv-cwl-schema.yml
index fe3eadd8e53163e8b545da97b7c85c50ed6f05f0..4e48216f32aefb962df7c93ea69769df9c9762a7 100644 (file)
@@ -1,7 +1,32 @@
 $base: "http://arvados.org/cwl#"
 $base: "http://arvados.org/cwl#"
+$namespaces:
+  cwl: "https://w3id.org/cwl/cwl#"
+  cwltool: "http://commonwl.org/cwltool#"
 $graph:
 $graph:
+- $import: https://w3id.org/cwl/CommonWorkflowLanguage.yml
+
+- name: cwltool:LoadListingRequirement
+  type: record
+  extends: cwl:ProcessRequirement
+  inVocab: false
+  fields:
+    class:
+      type: string
+      doc: "Always 'LoadListingRequirement'"
+      jsonldPredicate:
+        "_id": "@type"
+        "_type": "@vocab"
+    loadListing:
+      type:
+        - "null"
+        - type: enum
+          name: LoadListingEnum
+          symbols: [no_listing, shallow_listing, deep_listing]
+
 - name: RunInSingleContainer
   type: record
 - name: RunInSingleContainer
   type: record
+  extends: cwl:ProcessRequirement
+  inVocab: false
   doc: |
     Indicates that a subworkflow should run in a single container
     and not be scheduled as separate steps.
   doc: |
     Indicates that a subworkflow should run in a single container
     and not be scheduled as separate steps.
@@ -22,7 +47,7 @@ $graph:
     - |
       local_output_dir: Use regular file system local to the compute node.
       There must be sufficient local scratch space to store entire output;
     - |
       local_output_dir: Use regular file system local to the compute node.
       There must be sufficient local scratch space to store entire output;
-      specify this this with `outdirMin` of `ResourceRequirement`.  Files are
+      specify this with `outdirMin` of `ResourceRequirement`.  Files are
       batch uploaded to Keep when the process completes.  Most compatible, but
       upload step can be time consuming for very large files.
     - |
       batch uploaded to Keep when the process completes.  Most compatible, but
       upload step can be time consuming for very large files.
     - |
@@ -38,6 +63,8 @@ $graph:
 
 - name: RuntimeConstraints
   type: record
 
 - name: RuntimeConstraints
   type: record
+  extends: cwl:ProcessRequirement
+  inVocab: false
   doc: |
     Set Arvados-specific runtime hints.
   fields:
   doc: |
     Set Arvados-specific runtime hints.
   fields:
@@ -60,8 +87,22 @@ $graph:
         Preferred backing store for output staging.  If not specified, the
         system may choose which one to use.
 
         Preferred backing store for output staging.  If not specified, the
         system may choose which one to use.
 
+- name: PartitionRequirement
+  type: record
+  extends: cwl:ProcessRequirement
+  inVocab: false
+  doc: |
+    Select preferred compute partitions on which to run jobs.
+  fields:
+    - name: partition
+      type:
+        - string
+        - string[]
+
 - name: APIRequirement
   type: record
 - name: APIRequirement
   type: record
+  extends: cwl:ProcessRequirement
+  inVocab: false
   doc: |
     Indicates that process wants to access to the Arvados API.  Will be granted
     limited network access and have ARVADOS_API_HOST and ARVADOS_API_TOKEN set
   doc: |
     Indicates that process wants to access to the Arvados API.  Will be granted
     limited network access and have ARVADOS_API_HOST and ARVADOS_API_TOKEN set