9307: Improve crunchrunner error handling. Fix typo.
[arvados.git] / sdk / cwl / arvados_cwl / arv-cwl-schema.yml
1 $base: "http://arvados.org/cwl#"
2 $graph:
3 - name: RunInSingleContainer
4   type: record
5   doc: |
6     Indicates that a subworkflow should run in a single container
7     and not be scheduled as separate steps.
8   fields:
9     - name: class
10       type: string
11       doc: "Always 'arv:RunInSingleContainer'"
12       jsonldPredicate:
13         _id: "@type"
14         _type: "@vocab"
15
16 - name: OutputDirType
17   type: enum
18   symbols:
19     - local_output_dir
20     - keep_output_dir
21   doc:
22     - |
23       local_output_dir: Use regular file system local to the compute node.
24       There must be sufficient local scratch space to store entire output;
25       specify this with `outdirMin` of `ResourceRequirement`.  Files are
26       batch uploaded to Keep when the process completes.  Most compatible, but
27       upload step can be time consuming for very large files.
28     - |
29       keep_output_dir: Use writable Keep mount.  Files are streamed to Keep as
30       they are written.  Does not consume local scratch space, but does consume
31       RAM for output buffers (up to 192 MiB per file simultaneously open for
32       writing.)  Best suited to processes which produce sequential output of
33       large files (non-sequential writes may produced fragmented file
34       manifests).  Supports regular files and directories, does not support
35       special files such as symlinks, hard links, named pipes, named sockets,
36       or device nodes.
37
38
39 - name: RuntimeConstraints
40   type: record
41   doc: |
42     Set Arvados-specific runtime hints.
43   fields:
44     - name: class
45       type: string
46       doc: "Always 'arv:RuntimeConstraints'"
47       jsonldPredicate:
48         _id: "@type"
49         _type: "@vocab"
50     - name: keep_cache
51       type: int?
52       doc: |
53         Size of file data buffer for Keep mount in MiB. Default is 256
54         MiB. Increase this to reduce cache thrashing in situations such as
55         accessing multiple large (64+ MiB) files at the same time, or
56         performing random access on a large file.
57     - name: outputDirType
58       type: OutputDirType?
59       doc: |
60         Preferred backing store for output staging.  If not specified, the
61         system may choose which one to use.
62
63 - name: APIRequirement
64   type: record
65   doc: |
66     Indicates that process wants to access to the Arvados API.  Will be granted
67     limited network access and have ARVADOS_API_HOST and ARVADOS_API_TOKEN set
68     in the environment.
69   fields:
70     - name: class
71       type: string
72       doc: "Always 'arv:APIRequirement'"
73       jsonldPredicate:
74         _id: "@type"
75         _type: "@vocab"