Skip to content

Commit 8104953

Browse files
authored
extend Kallisto tools (#158)
1 parent 1bfe9fc commit 8104953

File tree

2 files changed

+178
-150
lines changed

2 files changed

+178
-150
lines changed

Kallisto/Kallisto-Index.cwl

+52-28
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,77 @@
11
#!/usr/bin/env cwl-runner
22
cwlVersion: v1.0
33
class: CommandLineTool
4+
label: Kallisto index
5+
doc: |2
46

5-
hints:
6-
DockerRequirement:
7-
dockerPull: quay.io/biocontainers/kallisto:0.45.0--hdcc98e5_0
8-
SoftwareRequirement:
9-
packages:
10-
kallisto:
11-
version: [ "0.45.0" ]
12-
specs: [ https://identifiers.org/biotools/kallisto ]
7+
Docs: https://pachterlab.github.io/kallisto/
8+
9+
10+
Builds a kallisto index
11+
12+
Usage: kallisto index [arguments] FASTA-files
13+
14+
Required argument:
15+
-i, --index=STRING Filename for the kallisto index to be constructed
16+
17+
Optional argument:
18+
-k, --kmer-size=INT k-mer (odd) length (default: 31, max value: 63)
19+
-t, --threads=INT Number of threads to use (default: 1)
20+
-d, --d-list=STRING Path to a FASTA-file containing sequences to mask from quantification
21+
--make-unique Replace repeated target names with unique names
22+
--aa Generate index from a FASTA-file containing amino acid sequences
23+
--distinguish Generate index where sequences are distinguished by the sequence name
24+
-T, --tmp=STRING Temporary directory (default: tmp)
25+
-m, --min-size=INT Length of minimizers (default: automatically chosen)
26+
-e, --ec-max-size=INT Maximum number of targets in an equivalence class (default: no maximum)
1327

1428
inputs:
15-
InputFiles:
16-
type: File[]
17-
format: edam:format_1929 # FASTA
18-
inputBinding:
19-
position: 200
20-
2129
IndexName:
2230
type: string
2331
inputBinding:
24-
prefix: "--index="
32+
prefix: --index=
33+
valueFrom: $(self).kallistoIndex
2534
separate: false
26-
valueFrom: $(self).kl
27-
28-
#Optional arguments
29-
35+
inputFasta:
36+
type: File[]
37+
format: edam:format_1929
38+
inputBinding:
39+
position: 200
3040
kmerSize:
3141
type: int?
3242
inputBinding:
33-
prefix: "--kmer-size="
43+
prefix: --kmer-size=
3444
separate: false
35-
3645
makeUnique:
3746
type: boolean?
3847
inputBinding:
39-
prefix: "--make-unique"
40-
41-
baseCommand: [kallisto, index]
48+
prefix: --make-unique
4249

4350
outputs:
44-
4551
index:
4652
type: File
4753
outputBinding:
48-
glob: $(inputs.IndexName)
54+
glob: $(inputs.IndexName).kallistoIndex
55+
56+
baseCommand:
57+
- kallisto
58+
- index
59+
60+
hints:
61+
DockerRequirement:
62+
dockerPull: quay.io/biocontainers/kallisto:0.51.1--ha4fb952_1
63+
SoftwareRequirement:
64+
packages:
65+
- package: kallisto
66+
specs:
67+
- https://identifiers.org/rrid/RRID:SCR_016582
68+
- https://identifiers.org/biotools/kallisto
69+
version:
70+
- 0.51.1
4971

5072
$namespaces:
51-
edam: http://edamontology.org/
73+
edam: https://edamontology.org/
74+
s: https://schema.org/
5275
$schemas:
53-
- https://edamontology.org/EDAM_1.18.owl
76+
- https://edamontology.org/EDAM_1.25.owl
77+
- https://schema.org/version/latest/schemaorg-current-https.rdf

Kallisto/Kallisto-Quant.cwl

+126-122
Original file line numberDiff line numberDiff line change
@@ -1,151 +1,155 @@
11
#!/usr/bin/env cwl-runner
22
cwlVersion: v1.0
33
class: CommandLineTool
4-
5-
hints:
6-
DockerRequirement:
7-
dockerPull: quay.io/biocontainers/kallisto:0.45.0--hdcc98e5_0
8-
SoftwareRequirement:
9-
packages:
10-
kallisto:
11-
version: [ "0.45.0" ]
12-
specs: [ https://identifiers.org/biotools/kallisto ]
4+
label: Kallisto quant
5+
doc: |2
6+
7+
Docs: https://pachterlab.github.io/kallisto/
8+
9+
Computes equivalence classes for reads and quantifies abundances
10+
11+
Usage: kallisto quant [arguments] FASTQ-files
12+
13+
Required arguments:
14+
-i, --index=STRING Filename for the kallisto index to be used for
15+
quantification
16+
-o, --output-dir=STRING Directory to write output to
17+
18+
Optional arguments:
19+
-b, --bootstrap-samples=INT Number of bootstrap samples (default: 0)
20+
--seed=INT Seed for the bootstrap sampling (default: 42)
21+
--plaintext Output plaintext instead of HDF5
22+
--single Quantify single-end reads
23+
--single-overhang Include reads where unobserved rest of fragment is
24+
predicted to lie outside a transcript
25+
--fr-stranded Strand specific reads, first read forward
26+
--rf-stranded Strand specific reads, first read reverse
27+
-l, --fragment-length=DOUBLE Estimated average fragment length
28+
-s, --sd=DOUBLE Estimated standard deviation of fragment length
29+
(default: -l, -s values are estimated from paired
30+
end data, but are required when using --single)
31+
-p, --priors Priors for the EM algorithm, either as raw counts or as
32+
probabilities. Pseudocounts are added to raw reads to
33+
prevent zero valued priors. Supplied in the same order
34+
as the transcripts in the transcriptome
35+
-t, --threads=INT Number of threads to use (default: 1)
36+
--verbose Print out progress information every 1M proccessed reads
1337

1438
inputs:
15-
InputReads:
16-
type: File[]
17-
format: edam:format_1930 # FASTA
39+
BootstrapSamples:
40+
type: int?
1841
inputBinding:
19-
position: 200
20-
42+
prefix: --bootstrap-samples=
43+
separate: false
44+
FragmentLength:
45+
type: double?
46+
inputBinding:
47+
prefix: --fragment-length=
48+
separate: false
49+
GenomeBam:
50+
type:
51+
- 'null'
52+
- name: genome_bam
53+
type: record
54+
fields:
55+
chromosomes:
56+
type: File
57+
inputBinding:
58+
prefix: --chromosomes
59+
genomebam:
60+
type: boolean
61+
inputBinding:
62+
prefix: --genomebam
63+
gtf:
64+
type: File
65+
inputBinding:
66+
prefix: --gtf
2167
Index:
2268
type: File
2369
inputBinding:
70+
prefix: --index
2471
position: 1
25-
prefix: "--index"
26-
27-
isSingle:
28-
type: boolean
29-
inputBinding:
30-
position: 2
31-
prefix: "--single"
32-
33-
#Optional Inputs
34-
35-
isBias:
36-
type: boolean?
37-
inputBinding:
38-
prefix: "--bias"
39-
40-
isFusion:
41-
type: boolean?
72+
InputReads:
73+
type: File[]
74+
format: edam:format_1930
4275
inputBinding:
43-
prefix: "--fusion"
44-
45-
isSingleOverhang:
76+
position: 200
77+
PseudoBam:
4678
type: boolean?
4779
inputBinding:
48-
prefix: "--single-overhang"
49-
50-
FragmentLength:
51-
type: double?
80+
prefix: --pseudobam
81+
QuantOutfolder:
82+
type: string
83+
Seed:
84+
type: int?
5285
inputBinding:
53-
separate: false
54-
prefix: "--fragment-length="
55-
86+
prefix: --seed
5687
StandardDeviation:
5788
type: double?
5889
inputBinding:
59-
prefix: "--sd"
60-
61-
BootstrapSamples:
62-
type: int?
63-
inputBinding:
64-
separate: false
65-
prefix: "--bootstrap-samples="
66-
67-
Seed:
68-
type: int?
69-
inputBinding:
70-
prefix: "--seed"
71-
72-
#Using record inputs to create mutually exclusive inputs
90+
prefix: --sd
7391
Strand:
7492
type:
75-
- "null"
76-
- type: record
77-
name: forward
78-
fields:
79-
forward:
80-
type: boolean
81-
inputBinding:
82-
prefix: "--fr-stranded"
83-
84-
- type: record
85-
name: reverse
86-
fields:
87-
reverse:
88-
type: boolean
89-
inputBinding:
90-
prefix: "--rf-stranded"
91-
92-
PseudoBam:
93+
- 'null'
94+
- name: forward
95+
type: record
96+
fields:
97+
forward:
98+
type: boolean
99+
inputBinding:
100+
prefix: --fr-stranded
101+
- name: reverse
102+
type: record
103+
fields:
104+
reverse:
105+
type: boolean
106+
inputBinding:
107+
prefix: --rf-stranded
108+
isBias:
93109
type: boolean?
94110
inputBinding:
95-
prefix: "--pseudobam"
96-
97-
#Using record inputs to create dependent inputs
98-
99-
GenomeBam:
100-
type:
101-
- "null"
102-
- type: record
103-
name: genome_bam
104-
fields:
105-
genomebam:
106-
type: boolean
107-
inputBinding:
108-
prefix: "--genomebam"
109-
110-
gtf:
111-
type: File
112-
inputBinding:
113-
prefix: "--gtf"
114-
115-
chromosomes:
116-
type: File
117-
inputBinding:
118-
prefix: "--chromosomes"
119-
120-
baseCommand: [ kallisto, quant ]
121-
122-
arguments: [ "--output-dir", out ]
111+
prefix: --bias
112+
isFusion:
113+
type: boolean?
114+
inputBinding:
115+
prefix: --fusion
116+
isSingle:
117+
type: boolean
118+
inputBinding:
119+
prefix: --single
120+
position: 2
121+
isSingleOverhang:
122+
type: boolean?
123+
inputBinding:
124+
prefix: --single-overhang
123125

124126
outputs:
125-
126-
quantification_h5:
127-
type: File
127+
kallistoQuantOutDir:
128+
type: Directory
128129
outputBinding:
129-
glob: out/abundances.h5
130+
glob: $(runtime.outdir)/$(inputs.QuantOutfolder)
130131

131-
# Long form method for defining optional outputs
132+
baseCommand:
133+
- kallisto
134+
- quant
135+
arguments:
136+
- --output-dir
137+
- $(inputs.QuantOutfolder)
132138

133-
quantification_tsv:
134-
type: File
135-
outputBinding:
136-
glob: out/abundances.tsv
137-
138-
bam:
139-
type: ["null", File]
140-
outputBinding:
141-
glob: "out/*.bam"
142-
143-
fusions:
144-
type: ["null", File]
145-
outputBinding:
146-
glob: "fusion.txt"
139+
hints:
140+
DockerRequirement:
141+
dockerPull: quay.io/biocontainers/kallisto:0.51.1--ha4fb952_1
142+
SoftwareRequirement:
143+
packages:
144+
- package: kallisto
145+
specs:
146+
- https://identifiers.org/biotools/kallisto
147+
version:
148+
- 0.51.1
147149

148150
$namespaces:
149-
edam: http://edamontology.org/
151+
edam: https://edamontology.org/
152+
s: https://schema.org/
150153
$schemas:
151-
- https://edamontology.org/EDAM_1.18.owl
154+
- https://edamontology.org/EDAM_1.25.owl
155+
- https://schema.org/version/latest/schemaorg-current-https.rdf

0 commit comments

Comments
 (0)