Main tool: TBProfiler
The pipeline aligns reads to the H37Rv reference using bowtie2, BWA or minimap2 and then calls variants using bcftools. These variants are then compared to a drug-resistance database. It also predicts the number of reads supporting drug resistance variants as an insight into hetero-resistance.
This tool relies on a database to run. The version (AKA git commit hash) of the database that is included in the docker image is c2fb9a2
. This is from the GitHub repository https://github.com/jodyphelan/tbdb. This can be confirmed in the json file: /opt/conda/share/tbprofiler/tbdb.version.json
:
$ grep 'commit' /opt/conda/share/tbprofiler/tbdb.version.json
{"name": "tbdb", "commit": "5f3c51e", "Merge": "b1a2549 abddb8e", "Author": "Jody Phelan <[email protected]>", "Date": "Thu Jan 19 10:47:32 2023 +0000"}
Additionally you can run the command tb-profiler list_db
to list the same information
$ tb-profiler list_db
tbdb 5f3c51e Jody Phelan <[email protected]> Thu Jan 19 10:47:32 2023 +0000 /opt/conda/share/tbprofiler/tbdb
- bedtools 2.30.0
- gatk4 4.3.0.0
- kmc 3.2.1
- pathogen-profiler 2.0.4
- perl 5.32.1
- python 3.9.9
- trimmomatic 0.39
- bwa 0.7.17
- minimap2 2.16
- samtools 1.12
- bcftools 1.12
- freebayes 1.3.5
- tqdm 4.32.2
- parallel v20190522
- samclip 0.4.0
- snpeff 5.1
Run whole pipeline on Illumina paired-end reads:
tb-profiler profile -1 ERR1664619_1.fastq.gz -2 ERR1664619_2.fastq.gz -t 4 -p ERR1664619 --txt
Make alternative database:
tb-profiler create_db --prefix <new_library_name>
tb-profiler load_library --prefix <new_library_name>
Release 5.0.1 implemented sqlite3 database locking with https://py-filelock.readthedocs.io/en/latest/index.html. This should fix issues using it over network filing systems (NFS). For more information, official documentation can be found here.