Skip to content

Commit 5d6aa29

Browse files
committed
Merge branch 'release/0.1.2'
2 parents d54c18a + 72ec4ff commit 5d6aa29

15 files changed

Lines changed: 298 additions & 278 deletions

‎.pyup.yml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@ Branch pre-fix: pyup-
66
Close PRs: True
77
Label PRs: False
88
Update hashes: True
9+
schedule: "every week"

‎command_line_tools‎

Submodule command_line_tools updated 47 files

‎docs/README.md‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ description: Workflow that creates all the bam files for the MSK-ACCESS fastq fi
66

77
[![PyPI version](https://badge.fury.io/py/fastq_to_bam.svg)](https://badge.fury.io/py/fastq_to_bam) [![Build Status](https://travis-ci.com/msk-access/fastq_to_bam.svg?branch=master)](https://travis-ci.com/msk-access/fastq_to_bam) [![Updates](https://pyup.io/repos/github/msk-access/fastq_to_bam/shield.svg)](https://pyup.io/repos/github/msk-access/fastq_to_bam/) [![Python 3](https://pyup.io/repos/github/msk-access/fastq_to_bam/python-3-shield.svg)](https://pyup.io/repos/github/msk-access/fastq_to_bam/)
88

9-
109
* Free software: Apache Software License 2.0
1110
* Documentation: [https://msk-access.gitbook.io/fastq-to-bam](https://msk-access.gitbook.io/fastq-to-bam)
1211

‎docs/inputs-description.md‎

Lines changed: 51 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
| **P** | Skip pairing for BWA; mate rescue performed unless -S also in use | true |
2323
| **M** | Mark shorter split hits as secondary \(for Picard/GATK compatibility\) | true |
2424
| **reference** | Reference fasta file | |
25-
| **read\_group\_identifier** | Read Group ID Default value: 1. This option can be set to 'null' to clear the default value Required | |
26-
| **read\_group\_sequencing\_center** | Read Group sequencing center name Default value: null. Required. | MSKCC |
25+
| **read\_group\_identifier** | Read Group ID. Required | |
26+
| **read\_group\_sequencing\_center** | Read Group sequencing center name. Required. | MSKCC |
2727
| **read\_group\_library** | Read Group Library. Required | |
2828
| **read\_group\_platform\_unit** | Read Group platform unit \(eg. run barcode\) Required. | |
2929
| **read\_group\_sequencing\_platform** | Read Group platform \(e.g. illumina, solid\) Required. | ILLUMINA |
@@ -60,11 +60,21 @@
6060
<tr>
6161
<td style="text-align:left"><b>bed_file</b>
6262
</td>
63-
<td style="text-align:left">The genotype from positions in this bed file will be used as the consensus
64-
base if <b>min_consensus_percent</b> threshold is not reached. Otherwise,
65-
the reference base from the supplied <b>reference_fasta</b> will be used</td>
66-
<td
67-
style="text-align:left"></td>
63+
<td style="text-align:left">
64+
<p>Bed file of target regions in tsv format with the following columns:</p>
65+
<ol>
66+
<li>contig / interval name</li>
67+
<li>interval start index</li>
68+
<li>interval end index</li>
69+
<li>+ / - to indicate strand</li>
70+
<li>interval desciption</li>
71+
</ol>
72+
<p>The genotype from positions in this bed file will be used as the consensus
73+
base if the marianas <b>min_consensus_percent</b> threshold is not reached.
74+
Otherwise, the reference base from the supplied <b>reference_fasta</b> will
75+
be used</p>
76+
</td>
77+
<td style="text-align:left"></td>
6878
</tr>
6979
<tr>
7080
<td style="text-align:left"><b>wobble</b>
@@ -76,15 +86,15 @@
7686
<tr>
7787
<td style="text-align:left"><b>reference_fasta</b>
7888
</td>
79-
<td style="text-align:left">Currently, hg19</td>
89+
<td style="text-align:left">Path to a reference fasta file to align to</td>
8090
<td style="text-align:left"></td>
8191
</tr>
8292
<tr>
8393
<td style="text-align:left"><b>mismatches</b>
8494
</td>
85-
<td style="text-align:left">Allowable mismatch count in UMI bases for grouping UMI families</td>
86-
<td
87-
style="text-align:left">0</td>
95+
<td style="text-align:left">Allowable number of mismatches between fragments / molecules in the same
96+
UMI family</td>
97+
<td style="text-align:left">0</td>
8898
</tr>
8999
<tr>
90100
<td style="text-align:left"><b>min_consensus_percent</b>
@@ -114,29 +124,26 @@
114124
<tr>
115125
<td style="text-align:left"><b>output_name_collapsed_gzip_R1</b>
116126
</td>
117-
<td style="text-align:left">
118-
<p></p>
119-
<p>Filename for collapsed read 1 fastq</p>
120-
</td>
127+
<td style="text-align:left">Filename to give to collapsed read 1 fastq</td>
121128
<td style="text-align:left"></td>
122129
</tr>
123130
<tr>
124131
<td style="text-align:left"><b>output_name_collapsed_gzip_R2</b>
125132
</td>
126-
<td style="text-align:left">Filename for collapsed read 2 fastq</td>
133+
<td style="text-align:left">Filename to give to collapsed read 2 fastq</td>
127134
<td style="text-align:left"></td>
128135
</tr>
129136
<tr>
130137
<td style="text-align:left"><b>picard_output_file_name</b>
131138
</td>
132-
<td style="text-align:left">Filename to be given to final re-aligned bam (SHOULD have DEFAULT?)</td>
139+
<td style="text-align:left">Filename to give to final re-aligned bam (SHOULD have DEFAULT?)</td>
133140
<td
134141
style="text-align:left"></td>
135142
</tr>
136143
<tr>
137144
<td style="text-align:left"><b>aln_output_file_name</b>
138145
</td>
139-
<td style="text-align:left">Filename to be given to intermediate sam file (SHOULD have DEFAULT?)</td>
146+
<td style="text-align:left">Filename to give to intermediate sam file (SHOULD have DEFAULT?)</td>
140147
<td
141148
style="text-align:left"></td>
142149
</tr>
@@ -171,7 +178,7 @@
171178
<tr>
172179
<td style="text-align:left"><b>bqsr_read_filter</b>
173180
</td>
174-
<td style="text-align:left">GATK READ_FILTER option to apply defferent set of ReadFilter</td>
181+
<td style="text-align:left">GATK READ_FILTER option to apply different set of ReadFilter</td>
175182
<td style="text-align:left"></td>
176183
</tr>
177184
<tr>
@@ -279,70 +286,43 @@
279286

280287
```text
281288
{
282-
"M": true,
283-
"P": true,
284-
"adapter": null,
285-
"adapter2": null,
286-
"assume_sorted": null,
287-
"bed_file": {
288-
"class": "File",
289-
"path": "panel.bed"
290-
},
291-
"bqsr_read_filter": null,
292-
"collapsing_aln_output_file_name": null,
293-
"collapsing_picard_output_file_name": null,
294-
"consensus_sequence": null,
295-
"contig_anchor": null,
296-
"create_bam_index": null,
289+
"standard_aln_output_file_name": "test_standard.sam",
290+
"standard_picard_addrg_output_filename": "test_standard.bam",
291+
"collapsing_aln_output_file_name": "test_unfiltered.sam",
292+
"collapsing_picard_output_file_name": "test_unfiltered.bam",
293+
"output_name_collapsed_gzip_R1": "test_collapsed_R1_fastq.gz",
294+
"output_name_collapsed_gzip_R2": "test_collapsed_R2_fastq.gz",
295+
"sort_first_pass_output_file_name": "test_collapsing_first_pass.txt",
296+
297+
"read_group_identifier": "test",
298+
"read_group_library": 1,
299+
"read_group_platform_unit": "IDT11",
300+
"read_group_sample_name": "test",
301+
297302
"fastq1": {
298303
"class": "File",
299-
"path": "TD-seracare-0-5per_IGO_05500_EZ_32_S25_R1_001.fastq.gz"
304+
"path": "/path/to/test_R1_001.fastq.gz",
300305
},
301306
"fastq2": {
302307
"class": "File",
303-
"path": "TD-seracare-0-5per_IGO_05500_EZ_32_S25_R2_001.fastq.gz"
308+
"path": "/path/to/test_R2_001.fastq.gz",
309+
},
310+
"bed_file": {
311+
"class": "File",
312+
"path": "/path/to/panel.bed",
304313
},
305-
"ignore_bad_assembly": null,
306-
"key": null,
307314
"known_sites_1": {
308315
"class": "File",
309-
"path": "dbsnp_137.b37.vcf"
316+
"path": "/path/to/dbsnp_137_14_16.b37.vcf",
317+
},
318+
"known_sites_2": {
319+
"class": "File",
320+
"path": "/path/to/Mills_and_1000G_gold_standard-14_16.indels.b37.vcf",
310321
},
311-
"known_sites_2": null,
312-
"length": null,
313-
"maximum_average_depth": null,
314-
"maximum_mixmatch_rate": null,
315-
"min_base_quality": null,
316-
"min_consensus_percent": null,
317-
"min_map_quality": null,
318-
"mismatches": null,
319-
"number_of_threads": null,
320-
"option_bedgraph": null,
321-
"output_name_collapsed_gzip_R1": null,
322-
"output_name_collapsed_gzip_R2": null,
323-
"quality": null,
324-
"read_group_identifier": "test_sample",
325-
"read_group_library": 0,
326-
"read_group_platform_unit": "PU",
327-
"read_group_sample_name": "test_sample",
328-
"read_group_sequencing_platform": Illumina,
329-
"read_group_sequnecing_center": MSKCC_test,
330322
"reference": {
331323
"class": "File",
332-
"path": "Homo_sapiens_assembly19.fasta"
324+
"path": "/path/to/Homo_sapiens_assembly19.fasta",
333325
},
334-
"scoring_gap_alignments": null,
335-
"soft_clip_contig": null,
336-
"sort_first_pass_output_file_name": "test",
337-
"sort_order": null,
338-
"standard_aln_output_file_name": null,
339-
"standard_picard_addrg_output_filename": null,
340-
"stringency": null,
341-
"trim_galore_number_of_threads": null,
342-
"validation_stringency": null,
343-
"window_size": null,
344-
"wobble": null
345326
}
346-
347327
```
348328

‎docs/installation.md‎

Lines changed: 31 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -14,78 +14,70 @@ If you are using cwltool only, please proceed using python 3.7 as done below:
1414

1515
Here we can use either [virtualenv](https://virtualenv.pypa.io/) or [conda](https://docs.conda.io/en/latest/). Here we will use virtualenv.
1616

17-
{% code-tabs %}
18-
{% code-tabs-item title="python3-virtualenv" %}
17+
{% code title="python3-virtualenv" %}
1918
```bash
2019
pip3 install virtualenv
2120
python3 -m venv my_project
2221
source my_project/bin/activate
2322
```
24-
{% endcode-tabs-item %}
25-
{% endcode-tabs %}
23+
{% endcode %}
2624

2725
### Option \(B\) - recommended for Juno HPC cluster
2826

2927
If you are using toil, python 2 is required. Please install using Python 2.7 as done below:
3028

3129
Here we can use either [virtualenv](https://virtualenv.pypa.io/) or [conda](https://docs.conda.io/en/latest/). Here we will use virtualenv.
3230

33-
{% code-tabs %}
34-
{% code-tabs-item title="python2-virtaulenv" %}
31+
{% code title="python2-virtaulenv" %}
3532
```bash
3633
pip install virtualenv
3734
virtualenv my_project
3835
source my_project/bin/activate
3936
```
40-
{% endcode-tabs-item %}
41-
{% endcode-tabs %}
37+
{% endcode %}
4238

4339
{% hint style="info" %}
4440
Once you execute the above command you will see your bash prompt something on this lines:
4541

46-
{% code-tabs %}
47-
{% code-tabs-item title="bash-prompt-example" %}
42+
{% code title="bash-prompt-example" %}
4843
```bash
4944
(my_project)[server]$
5045
```
51-
{% endcode-tabs-item %}
52-
{% endcode-tabs %}
46+
{% endcode %}
5347
{% endhint %}
5448

5549

5650

5751
## Step 2: Clone the repository
5852

59-
{% code-tabs %}
60-
{% code-tabs-item title="git-clone-with-submodule" %}
53+
{% code title="git-clone-with-submodule" %}
6154
```bash
62-
git clone --recursive https://github.com/msk-access/fastq_to_bam.git
63-
cd fastq_to_bam
64-
git submodule update --recursive --remote
55+
git clone --recursive --branch 0.1.1 https://github.com/msk-access/fastq_to_bam.git
6556
```
66-
{% endcode-tabs-item %}
67-
{% endcode-tabs %}
57+
{% endcode %}
58+
59+
{% hint style="info" %}
60+
**Note:** Change 0.1.1 to the latest stable release of the pipeline
61+
{% endhint %}
6862

6963
## Step 3: Install requirements using pip
7064

7165
We have already specified the version of cwltool and other packages in the requirements.txt file. Please use this to install.
7266

73-
{% code-tabs %}
74-
{% code-tabs-item title="python-package-installation-using-pip" %}
67+
{% code title="python-package-installation-using-pip" %}
7568
```bash
7669
#python2
7770
pip install -r requirements.txt
7871
#python3
7972
pip3 install -r requirements.txt
8073
```
81-
{% endcode-tabs-item %}
82-
{% endcode-tabs %}
74+
{% endcode %}
8375

8476
## Step 4: Generate an inputs file
8577

8678
Next you must generate a proper input file in either [json](https://www.json.org/) or [yaml](https://yaml.org/) format.
8779

88-
For details on how to create this file, please follow this example:
80+
For details on how to create this file, please follow this example \(there is a minimal example of what needs to be filled in at the end of the page\):
8981

9082
{% page-ref page="inputs-description.md" %}
9183

@@ -109,13 +101,11 @@ Here we show how to use [cwltool](https://github.com/common-workflow-language/cw
109101

110102
#### Run the workflow with a given set of input using [cwltool](https://github.com/common-workflow-language/cwltool) on single machine
111103

112-
{% code-tabs %}
113-
{% code-tabs-item title="cwltool-execution" %}
104+
{% code title="cwltool-execution" %}
114105
```bash
115106
cwltool fastq_to_bam.cwl inputs.yaml
116107
```
117-
{% endcode-tabs-item %}
118-
{% endcode-tabs %}
108+
{% endcode %}
119109
{% endtab %}
120110

121111
{% tab title="Using toil-cwl-runner locally" %}
@@ -125,27 +115,27 @@ Once we have successfully installed the requirements we can now run the workflow
125115

126116
#### Run the workflow with a given set of input using [toil](https://toil.readthedocs.io/en/latest/running/introduction.html) on single machine
127117

128-
{% code-tabs %}
129-
{% code-tabs-item title="toil-local-execution" %}
118+
{% code title="toil-local-execution" %}
130119
```bash
131120
toil-cwl-runner fastq_to_bam.cwl inputs.yaml
132121
```
133-
{% endcode-tabs-item %}
134-
{% endcode-tabs %}
122+
{% endcode %}
135123
{% endtab %}
136124

137125
{% tab title="Using toil-cwl-runner on JUNO" %}
138126
Here we show how to run the workflow using [toil-cwl-runner](https://toil.readthedocs.io/en/latest/running/introduction.html) on MSKCC internal compute cluster called JUNO which has [IBM LSF](https://www.ibm.com/support/knowledgecenter/en/SSETD4/product_welcome_platform_lsf.html) as a scheduler.
139127

140-
Note the use of `--singularity`to convert Docker containers into singularity containers, the `TMPDIR`envirionment variable to avoid writing temporary files to shared disk space, and `TOIl_LSF_ARGS` to specify any additional arguments to `bsub`commands that the jobs should have \(in this case, setting a max walltime of 6 hours\).
128+
Note the use of `--singularity`to convert Docker containers into singularity containers, the `TMPDIR` environment variable to avoid writing temporary files to shared disk space, the `_JAVA_OPTIONS` environment variable to specify java temporary directory to `/scratch`, using `SINGULARITY_BINDPATH` environment variable to bind the `/scratch` when running singularity containers and `TOIl_LSF_ARGS` to specify any additional arguments to `bsub`commands that the jobs should have \(in this case, setting a max wall-time of 6 hours\).
141129

142130
Run the workflow with a given set of input using [toil](https://toil.readthedocs.io/en/latest/running/introduction.html) on JUNO \(MSKCC Research Cluster\)
143131

144-
{% code-tabs %}
145-
{% code-tabs-item title="toil-lsf-execution" %}
132+
{% code title="toil-lsf-execution" %}
133+
146134
```bash
147135
TMPDIR=$PWD
148-
TOIL_LSF_ARGS='-W 3600'
136+
TOIL_LSF_ARGS='-W 3600 -P test_fastq_to_bam -app anyOS -R select[type==CentOS7]'
137+
_JAVA_OPTIONS='-Djava.io.tmpdir=/scratch/'
138+
SINGULARITY_BINDPATH='/scratch:/scratch:rw'
149139
toil-cwl-runner \
150140
--singularity \
151141
--logFile ./example.log \
@@ -156,19 +146,19 @@ toil-cwl-runner \
156146
--writeLogs ./example_log_folder/ \
157147
--logLevel DEBUG \
158148
--stats \
159-
--retryCount 2
149+
--retryCount 2 \
160150
--disableCaching \
161151
--disableChaining \
162-
--maxLogFileSize 20000000000 \
163-
--cleanWorkDir onSuccess
164152
--preserve-environment TOIL_LSF_ARGS TMPDIR \
153+
--maxLogFileSize 20000000000 \
154+
--cleanWorkDir onSuccess \
165155
fastq_to_bam.cwl \
166156
inputs.yaml \
167157
> toil.stdout \
168158
2> toil.stderr &
169159
```
170-
{% endcode-tabs-item %}
171-
{% endcode-tabs %}
160+
161+
{% endcode %}
172162
{% endtab %}
173163
{% endtabs %}
174164

0 commit comments

Comments
 (0)