Skip to content

Commit ba5942f

Browse files
authored
Merge pull request #139 from /issues/138-hard-code-tool-dockers
Hardcode tool docker versions (related to #138)
2 parents b1b50e9 + 14b5ad3 commit ba5942f

File tree

17 files changed

+55
-54
lines changed

17 files changed

+55
-54
lines changed

required_docker_tools.txt

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,40 @@
11
# Alignment
2-
cutadapt:latest
3-
bwa:latest
4-
star:latest
5-
starlong:latest
2+
cutadapt:1.9.1
3+
bwa:0.7.9a
4+
star:2.4.2a
5+
starlong:2.4.2a
66

77
# Alignment post
8-
samtools:latest
9-
picard:latest
8+
samtools:1.2
9+
picard:1.135
1010

1111
# Expression Estimation
12-
rsem:latest
12+
rsem:1.2.20
1313

1414
# Haplotyping
15-
phlat:latest
15+
phlat:1.0
1616

1717
# Mutation Calling
18-
mutect:1.1.7
19-
radia:latest
20-
filterradia:latest
21-
muse:latest
22-
somaticsniper:latest (proposed)
23-
vardict:latest (proposed)
18+
mutect:1.1.7
19+
radia:398366ef07b5911d8082ed61cbf03d487a41f286
20+
filterradia:398366ef07b5911d8082ed61cbf03d487a41f286
21+
muse:1.0rc_submission_b391201
22+
somaticsniper:1.0.4
23+
somaticsniper-addons:1.0.4
24+
samtools:0.1.8
25+
strelka:1.0.15
26+
bam-readcount:0.7.4
2427

2528
# Mutation Annotation
26-
snpeff:latest
27-
transvar:latest
29+
snpeff:3.6
2830

2931
# Mutation Translation
30-
transgene:latest
32+
transgene:1.0.0
3133

3234
# MHC:peptide binding prediction
33-
mhci:latest
34-
mhcii:latest
35-
netmhciipan:final:latest
36-
37-
# MHC post
38-
rankboost:latest
35+
mhci:2.13
36+
mhcii:2.13
37+
netmhciipan:3.1
3938

39+
# Prediction Ranking
40+
rankboost:1.0.0

src/protect/alignment/common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def index_bamfile(job, bamfile, sample_type, univ_options):
4646
input_files = get_files_from_filestore(job, input_files, work_dir, docker=True)
4747
parameters = ['index',
4848
input_files[in_bamfile]]
49-
docker_call(tool='samtools', tool_parameters=parameters,
49+
docker_call(tool='samtools:1.2', tool_parameters=parameters,
5050
work_dir=work_dir, dockerhub=univ_options['dockerhub'])
5151
out_bai = '/'.join([work_dir, in_bamfile + '.bai'])
5252
output_files = {in_bamfile: bamfile,

src/protect/alignment/dna.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ def run_bwa(job, fastqs, sample_type, univ_options, bwa_options):
112112
input_files['dna_1.fastq' + gz],
113113
input_files['dna_2.fastq' + gz]]
114114
with open(''.join([work_dir, '/', sample_type, '_aligned.sam']), 'w') as samfile:
115-
docker_call(tool='bwa', tool_parameters=parameters, work_dir=work_dir,
115+
docker_call(tool='bwa:0.7.9a', tool_parameters=parameters, work_dir=work_dir,
116116
dockerhub=univ_options['dockerhub'], outfile=samfile)
117117
# samfile.name retains the path info
118118
output_file = job.fileStore.writeGlobalFile(samfile.name)
@@ -144,7 +144,7 @@ def bam_conversion(job, samfile, sample_type, univ_options):
144144
'-o', docker_path(bamfile),
145145
input_files[sample_type + '_aligned.sam']
146146
]
147-
docker_call(tool='samtools', tool_parameters=parameters, work_dir=work_dir,
147+
docker_call(tool='samtools:1.2', tool_parameters=parameters, work_dir=work_dir,
148148
dockerhub=univ_options['dockerhub'])
149149
output_file = job.fileStore.writeGlobalFile(bamfile)
150150
# The samfile is no longer useful so delete it
@@ -174,7 +174,7 @@ def fix_bam_header(job, bamfile, sample_type, univ_options):
174174
'-H',
175175
input_files[sample_type + '_aligned.bam']]
176176
with open('/'.join([work_dir, sample_type + '_aligned_bam.header']), 'w') as headerfile:
177-
docker_call(tool='samtools', tool_parameters=parameters, work_dir=work_dir,
177+
docker_call(tool='samtools:1.2', tool_parameters=parameters, work_dir=work_dir,
178178
dockerhub=univ_options['dockerhub'], outfile=headerfile)
179179
with open(headerfile.name, 'r') as headerfile, \
180180
open('/'.join([work_dir, sample_type + '_output_bam.header']), 'w') as outheaderfile:
@@ -186,7 +186,7 @@ def fix_bam_header(job, bamfile, sample_type, univ_options):
186186
docker_path(outheaderfile.name),
187187
input_files[sample_type + '_aligned.bam']]
188188
with open('/'.join([work_dir, sample_type + '_aligned_fixPG.bam']), 'w') as fixpg_bamfile:
189-
docker_call(tool='samtools', tool_parameters=parameters, work_dir=work_dir,
189+
docker_call(tool='samtools:1.2', tool_parameters=parameters, work_dir=work_dir,
190190
dockerhub=univ_options['dockerhub'], outfile=fixpg_bamfile)
191191
output_file = job.fileStore.writeGlobalFile(fixpg_bamfile.name)
192192
# The old bam file is now useless.
@@ -223,7 +223,7 @@ def add_readgroups(job, bamfile, sample_type, univ_options):
223223
'PL=ILLUMINA',
224224
'PU=12345',
225225
''.join(['SM=', sample_type.rstrip('_dna')])]
226-
docker_call(tool='picard', tool_parameters=parameters, work_dir=work_dir,
226+
docker_call(tool='picard:1.135', tool_parameters=parameters, work_dir=work_dir,
227227
dockerhub=univ_options['dockerhub'], java_opts=univ_options['java_Xmx'])
228228
output_file = job.fileStore.writeGlobalFile(
229229
'/'.join([work_dir, sample_type + '_aligned_fixpg_sorted_reheader.bam']))

src/protect/alignment/rna.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,10 @@ def run_star(job, fastqs, univ_options, star_options):
100100
if gz:
101101
parameters.extend(['--readFilesCommand', 'zcat'])
102102
if star_options['type'] == 'star':
103-
docker_call(tool='star', tool_parameters=parameters, work_dir=work_dir,
103+
docker_call(tool='star:2.4.2a', tool_parameters=parameters, work_dir=work_dir,
104104
dockerhub=univ_options['dockerhub'])
105105
else:
106-
docker_call(tool='starlong', tool_parameters=parameters, work_dir=work_dir,
106+
docker_call(tool='starlong:2.4.2a', tool_parameters=parameters, work_dir=work_dir,
107107
dockerhub=univ_options['dockerhub'])
108108
output_files = defaultdict()
109109
for bam_file in ['rnaAligned.toTranscriptome.out.bam',

src/protect/binding_prediction/mhci.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def predict_mhci_binding(job, peptfile, allele, peplen, univ_options,
3737
peplen,
3838
input_files['peptfile.faa']]
3939
with open('/'.join([work_dir, 'predictions.tsv']), 'w') as predfile:
40-
docker_call(tool='mhci', tool_parameters=parameters, work_dir=work_dir,
40+
docker_call(tool='mhci:2.13', tool_parameters=parameters, work_dir=work_dir,
4141
dockerhub=univ_options['dockerhub'], outfile=predfile, interactive=True)
4242
output_file = job.fileStore.writeGlobalFile(predfile.name)
4343
return output_file

src/protect/binding_prediction/mhcii.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ def predict_mhcii_binding(job, peptfile, allele, univ_options, mhcii_options):
3838
allele,
3939
input_files['peptfile.faa']]
4040
with open('/'.join([work_dir, 'predictions.tsv']), 'w') as predfile:
41-
docker_call(tool='mhcii', tool_parameters=parameters, work_dir=work_dir,
41+
docker_call(tool='mhcii:2.13', tool_parameters=parameters, work_dir=work_dir,
4242
dockerhub=univ_options['dockerhub'], outfile=predfile, interactive=True)
4343
run_netmhciipan = True
4444
predictor = None
@@ -92,7 +92,7 @@ def predict_netmhcii_binding(job, peptfile, allele, univ_options):
9292
'-f', input_files['peptfile.faa']]
9393
# netMHC writes a lot of useless stuff to sys.stdout so we open /dev/null and dump output there.
9494
with open(os.devnull, 'w') as output_catcher:
95-
docker_call(tool='netmhciipan:final', tool_parameters=parameters, work_dir=work_dir,
95+
docker_call(tool='netmhciipan:3.1', tool_parameters=parameters, work_dir=work_dir,
9696
dockerhub=univ_options['dockerhub'], outfile=output_catcher)
9797
output_file = job.fileStore.writeGlobalFile('/'.join([work_dir, 'predictions.tsv']))
9898
return output_file, 'netMHCIIpan'

src/protect/common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ def bam2fastq(bamfile, univ_options):
354354
''.join(['F=/data/', base_name, '_1.fastq']),
355355
''.join(['F2=/data/', base_name, '_2.fastq']),
356356
''.join(['FU=/data/', base_name, '_UP.fastq'])]
357-
docker_call(tool='picard', tool_parameters=parameters, work_dir=work_dir,
357+
docker_call(tool='picard:1.135', tool_parameters=parameters, work_dir=work_dir,
358358
dockerhub=univ_options['dockerhub'], java_opts=univ_options['java_Xmx'])
359359
first_fastq = ''.join([work_dir, '/', base_name, '_1.fastq'])
360360
assert os.path.exists(first_fastq)

src/protect/expression_profiling/rsem.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def run_rsem(job, rna_bam, univ_options, rsem_options):
8080
'--no-bam-output',
8181
'/'.join([input_files['rsem_index'], 'hg19']),
8282
'rsem']
83-
docker_call(tool='rsem', tool_parameters=parameters, work_dir=work_dir,
83+
docker_call(tool='rsem:1.2.20', tool_parameters=parameters, work_dir=work_dir,
8484
dockerhub=univ_options['dockerhub'])
8585
output_files = {}
8686
for filename in ('rsem.genes.results', 'rsem.isoforms.results'):

src/protect/haplotyping/phlat.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ def run_phlat(job, fastqs, sample_type, univ_options, phlat_options):
7777
'-e', '/home/phlat-1.0', # Phlat directory home
7878
'-o', '/data', # Output directory
7979
'-p', str(phlat_options['n'])] # Number of threads
80-
docker_call(tool='phlat', tool_parameters=parameters, work_dir=work_dir,
80+
docker_call(tool='phlat:1.0', tool_parameters=parameters, work_dir=work_dir,
8181
dockerhub=univ_options['dockerhub'])
8282
output_file = job.fileStore.writeGlobalFile(''.join([work_dir, '/', sample_type, '_HLA.sum']))
8383
return output_file

src/protect/mutation_annotation/snpeff.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ def run_snpeff(job, merged_mutation_file, univ_options, snpeff_options):
6666
input_files['merged_mutations.vcf']]
6767
xmx = snpeff_options['java_Xmx'] if snpeff_options['java_Xmx'] else univ_options['java_Xmx']
6868
with open('/'.join([work_dir, 'mutations.vcf']), 'w') as snpeff_file:
69-
docker_call(tool='snpeff', tool_parameters=parameters, work_dir=work_dir,
69+
docker_call(tool='snpeff:3.6', tool_parameters=parameters, work_dir=work_dir,
7070
dockerhub=univ_options['dockerhub'], java_opts=xmx, outfile=snpeff_file)
7171
export_results(job, snpeff_file.name, univ_options, subfolder='mutations/snpeffed')
7272
output_file = job.fileStore.writeGlobalFile(snpeff_file.name)

0 commit comments

Comments
 (0)