Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding pypolca #877

Merged
merged 1 commit into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Program_Licenses.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ The licenses of the open-source software that is contained in these Docker image
| Prokka | GNU GPLv3 | https://raw.githubusercontent.com/tseemann/prokka/master/doc/LICENSE.Prokka |
| pyCirclize | MIT | https://github.com/moshi4/pyCirclize/blob/main/LICENSE |
| pyGenomeViz | MIT | https://github.com/moshi4/pyGenomeViz/blob/main/LICENSE |
| pypolca | MIT | https://github.com/gbouras13/pypolca/blob/main/LICENSE |
| QUAST | GNU GPLv2 | https://github.com/ablab/quast/blob/master/LICENSE.txt |
| QuickSNP | GNU GPLv3 | https://github.com/k-florek/QuickSNP/blob/main/LICENSE |
| racon | MIT | https://github.com/lbcb-sci/racon/blob/master/LICENSE ; https://github.com/isovic/racon/blob/master/LICENSE |
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ To learn more about the docker pull rate limits and the open source software pro
| [Prokka](https://hub.docker.com/r/staphb/prokka/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/prokka)](https://hub.docker.com/r/staphb/prokka) | <ul><li>1.13.4</li><li>1.14.0</li><li>1.14.5</li><li>1.14.6</li></ul> | https://github.com/tseemann/prokka |
| [pyCirclize](https://hub.docker.com/r/staphb/pycirclize/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/pycirclize)](https://hub.docker.com/r/staphb/pycirclize) | <ul><li>[1.0.0](pycirclize/1.0.0/)</li><li>[1.2.0](./pycirclize/1.2.0/)</li></ul> | https://github.com/moshi4/pyCirclize |
| [pyGenomeViz](https://hub.docker.com/r/staphb/pygenomeviz/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/pygenomeviz)](https://hub.docker.com/r/staphb/pygenomeviz) | <ul><li>0.2.2</li><li>0.3.2</li><li>[0.4.2](pygenomeviz/0.4.2/)</li><li>[0.4.3](pygenomeviz/0.4.3/)</li><li>[0.4.4](pygenomeviz/0.4.4/)</li></ul> | https://github.com/moshi4/pyGenomeViz |
| [pypolca](https://hub.docker.com/r/staphb/pypolca/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/pypolca)](https://hub.docker.com/r/staphb/pypolca) | <ul><li>[0.3.1](./pypolca/0.3.1/)</li></ul> | https://github.com/gbouras13/pypolca |
| [QUAST](https://hub.docker.com/r/staphb/quast/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/quast)](https://hub.docker.com/r/staphb/quast) | <ul><li>5.0.0</li><li>5.0.2</li><li>[5.2.0](./quast/5.2.0)</li><li>[5.2.0-slim](./quast/5.2.0-slim)</li></ul> | https://github.com/ablab/quast |
| [QuickSNP](https://hub.docker.com/r/staphb/quicksnp/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/quicksnp)](https://hub.docker.com/r/staphb/quicksnp) | <ul><li>1.0.1</li></ul> | https://github.com/k-florek/QuickSNP |
| [racon](https://hub.docker.com/r/staphb/racon) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/racon)](https://hub.docker.com/r/staphb/racon)| <ul><li>[1.4.3](./racon/1.4.3/)</li><li>[1.4.20](./racon/1.4.20/)</li><li>[1.5.0](./racon/1.5.0/)</li></ul> | <li> https://github.com/lbcb-sci/racon </li><li> https://github.com/isovic/racon (ARCHIVED)</li> |
Expand Down
62 changes: 62 additions & 0 deletions pypolca/0.3.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# both of these use the ubuntu:jammy base
FROM staphb/freebayes:1.3.7 as freebayes
FROM staphb/samtools:1.19 as samtools

FROM ubuntu:jammy as app

ARG PYPOLCA_VER="0.3.1"

# 'LABEL' instructions tag the image with metadata that might be important to the user
LABEL base.image="ubuntu:jammy"
LABEL dockerfile.version="1"
LABEL software="pypolca"
LABEL software.version="${PYPOLCA_VER}"
LABEL description="Polishes long reads"
LABEL website="https://github.com/gbouras13/pypolca"
LABEL license="https://github.com/gbouras13/pypolca/blob/main/LICENSE"
LABEL maintainer="Erin Young"
LABEL maintainer.email="[email protected]"

ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
procps \
ca-certificates \
wget \
bwa \
vcftools \
libseqlib-dev \
libvcflib-tools \
parallel \
bc \
python3 \
python3-pip && \
apt-get autoclean && rm -rf /var/lib/apt/lists/*

COPY --from=freebayes /usr/local/bin/* /usr/local/bin/
COPY --from=samtools /usr/local/bin/* /usr/local/bin/

RUN pip3 install --no-cache pypolca==${PYPOLCA_VER}

ENV PATH="$PATH" \
LC_ALL=C

# 'CMD' instructions set a default command when the container is run. This is typically 'tool --help.'
CMD pypolca -h

# 'WORKDIR' sets working directory
WORKDIR /data

# A second FROM insruction creates a new stage
FROM app as test

WORKDIR /test

RUN pypolca -h && \
pypolca --version

RUN wget -q https://raw.githubusercontent.com/StaPH-B/docker-builds/master/tests/SARS-CoV-2/SRR13957123_1.fastq.gz && \
wget -q https://raw.githubusercontent.com/StaPH-B/docker-builds/master/tests/SARS-CoV-2/SRR13957123_2.fastq.gz && \
wget -q https://raw.githubusercontent.com/StaPH-B/docker-builds/master/tests/SARS-CoV-2/SRR13957123.consensus.fa && \
pypolca run -a SRR13957123.consensus.fa -1 SRR13957123_1.fastq.gz -2 SRR13957123_2.fastq.gz -t 2 -o test && \
head test/pypolca_*.log && \
ls test/pypolca.report test/pypolca.vcf test/pypolca_corrected.fasta
27 changes: 27 additions & 0 deletions pypolca/0.3.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# pypolca container

Main tool: [pypolca](https://github.com/gbouras13/pypolca)

Code repository:

Additional tools:
- samtools: 1.19
- vcftools: 0.1.16
- bwa: 0.7.17-r1188
- freebayes: 1.3.7

Basic information on how to use this tool:
- executable: pypolca
- help: pypolca -h
- version: pypolca -v
- description: Polished long-read assemblies with Illumina reads

> pypolca is a Standalone Python re-implementation of the POLCA polisher from the MaSuRCA genome assembly and analysis toolkit.
Full documentation: [https://github.com/rrwick/Polypolish](https://github.com/rrwick/Polypolish)

## Example Usage

```bash
pypolca run -a assembly.fasta -1 R1.fastq.gz -2 R2.fastq.gz -t 4 -o output
```
Loading