-
Notifications
You must be signed in to change notification settings - Fork 119
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ARIBA 2.14.6 Update and Adding
test
Stage (#690)
* Update ARIBA to 2.14.6 with basic test * Add a basic README * Include ARIBA 2.14.6 * Improve README * Adhere to current repo standard * Fix PYSAM ver typo * added link to files * Added SPADES_VER ARG * Added CMD * update Curtis' email * minor changes - reset dockerfile.version to 1, added apt-get autoclean to clean up apt garbage; added a comment; consolidated 2 RUN layers in test stage --------- Co-authored-by: Young <[email protected]> Co-authored-by: Curtis Kapsak <[email protected]>
- Loading branch information
1 parent
fd55464
commit a305159
Showing
3 changed files
with
121 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
FROM ubuntu:bionic as app | ||
|
||
# for easy upgrade later. ARG variables only persist during build time | ||
# ARIBA=2.14.6, pysam=0.15.4; pysam=0.16.0 breaks ariba 2.14.4 (June 2020) | ||
ARG PYSAM_VER="0.15.4" | ||
ARG ARIBA_VER="2.14.6" | ||
ARG SPADES_VER="3.15.5" | ||
|
||
LABEL base.image="ubuntu:bionic" | ||
LABEL dockerfile.version="1" | ||
LABEL software="ARIBA" | ||
LABEL software.version="2.14.6" | ||
LABEL description="ARIBA: Antimicrobial Resistance Identification By Assembly" | ||
LABEL website="https://github.com/sanger-pathogens/ariba" | ||
LABEL license="https://github.com/sanger-pathogens/ariba/blob/master/LICENSE" | ||
LABEL maintainer="Curtis Kapsak" | ||
LABEL maintainer.email="[email protected]" | ||
LABEL maintainer2="Harry Hung" | ||
LABEL maintainer2.email="[email protected]" | ||
|
||
# prevents having to enter commands during apt-get install | ||
ARG DEBIAN_FRONTEND=noninteractive | ||
|
||
# dependencies | ||
RUN apt-get update && apt-get install --no-install-recommends -y \ | ||
python3-dev \ | ||
python3-pip \ | ||
python3-tk \ | ||
python3-setuptools \ | ||
python3-wheel \ | ||
cython3 \ | ||
zlib1g-dev \ | ||
bowtie2 \ | ||
mummer \ | ||
cd-hit \ | ||
wget \ | ||
curl \ | ||
gawk \ | ||
locales-all \ | ||
build-essential \ | ||
libbz2-dev \ | ||
libjpeg-dev \ | ||
liblzma-dev \ | ||
autoconf \ | ||
automake \ | ||
perl \ | ||
libcurl4-gnutls-dev \ | ||
libssl-dev && \ | ||
apt-get autoclean && rm -rf /var/lib/apt/lists/* | ||
|
||
ENV LANG=en_US.UTF-8 \ | ||
LANGUAGE=en_US:en | ||
|
||
# optional installation to enable the usage of SPAdes assembler | ||
RUN wget https://github.com/ablab/spades/releases/download/v${SPADES_VER}/SPAdes-${SPADES_VER}-Linux.tar.gz && \ | ||
tar -xzf SPAdes-${SPADES_VER}-Linux.tar.gz && \ | ||
rm -r SPAdes-${SPADES_VER}-Linux.tar.gz && \ | ||
mkdir /data | ||
|
||
# needed to avoid a matplotlib error | ||
# https://github.com/sanger-pathogens/ariba/blob/b1b524c9d9588cba9d998c9121bd74c63856526/Dockerfile#L49 | ||
ENV MPLBACKEND="agg" | ||
|
||
RUN pip3 install pysam==${PYSAM_VER} ariba==${ARIBA_VER} | ||
|
||
# set $PATH and locale settings for singularity compatibility | ||
ENV PATH="$PATH:/SPAdes-${SPADES_VER}-Linux/bin" \ | ||
LC_ALL=C | ||
|
||
WORKDIR /data | ||
|
||
# default command is to pull up help options | ||
CMD ["ariba", "--help"] | ||
|
||
# new base for testing | ||
FROM app as test | ||
|
||
# print out ARIBA version and | ||
RUN ariba version | ||
|
||
# run built-in test and confirm files are successfully created | ||
RUN ariba test out && \ | ||
ls out/OUT/assemblies.fa.gz && \ | ||
ls out/OUT/assembled_genes.fa.gz && \ | ||
ls out/OUT/assembled_seqs.fa.gz && \ | ||
ls out/OUT/log.clusters.gz && \ | ||
ls out/OUT/report.tsv && \ | ||
ls out/OUT/version_info.txt |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# ARIBA container | ||
|
||
Main tool: [ARIBA](https://github.com/sanger-pathogens/ariba) | ||
|
||
Additional tools: | ||
- [pysam](https://github.com/pysam-developers/pysam) 0.15.4 | ||
- [SPAdes](https://github.com/ablab/spades) 3.15.5 | ||
|
||
Full documentation: [https://github.com/sanger-pathogens/ariba/wiki](https://github.com/sanger-pathogens/ariba/wiki) | ||
|
||
Antimicrobial Resistance Identification By Assembly | ||
|
||
ARIBA is a tool that identifies antibiotic resistance genes by running local assemblies. It can also be used for MLST calling. | ||
|
||
The input is a FASTA file of reference sequences (can be a mix of genes and noncoding sequences) and paired sequencing reads. ARIBA reports which of the reference sequences were found, plus detailed information on the quality of the assemblies and any variants between the sequencing reads and the reference sequences. | ||
|
||
## Example Usage | ||
|
||
```bash | ||
# Get reference data, for instance from CARD | ||
ariba getref ncbi out.ncbi | ||
|
||
# Prepare reference data for ARIBA | ||
ariba prepareref -f out.ncbi.fa -m out.ncbi.tsv out.ncbi.prepareref | ||
|
||
# Run local assemblies and call variants | ||
ariba run out.ncbi.prepareref reads1.fastq reads2.fastq out.run | ||
|
||
#Summarise data from several runs | ||
ariba summary out.summary out.run1/report1.tsv out.run2/report2.tsv out.run3/report3.tsv | ||
``` | ||
Please read the [ARIBA wiki page](https://github.com/sanger-pathogens/ariba/wiki) for full usage instructions. |