From 50ccd8ba456a0b16b00522bacdb72153743fdfa0 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Wed, 10 Jul 2024 14:58:49 +0000 Subject: [PATCH 01/22] add genoflu --- genoflu/1.0.3/Dockerfile | 51 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 genoflu/1.0.3/Dockerfile diff --git a/genoflu/1.0.3/Dockerfile b/genoflu/1.0.3/Dockerfile new file mode 100644 index 000000000..9a168edfe --- /dev/null +++ b/genoflu/1.0.3/Dockerfile @@ -0,0 +1,51 @@ +FROM mambaorg/micromamba:1.5.8 as app + +USER root +WORKDIR / + +ARG GENOFLU_VER="1.0.3" + +# LABEL instructions tag the image with metadata that might be important to the user +LABEL base.image="micromamba:1.5.8" +LABEL dockerfile.version="1" +LABEL software="genoflu" +LABEL software.version=$GENOFLU_VER +LABEL description="Uses BLAST to detect whole-genome flu genotype" +LABEL website="https://github.com/USDA-VS/GenoFLU" +LABEL license="https://github.com/USDA-VS/GenoFLU/blob/main/LICENSE" +LABEL maintainer="Sage Wright" +LABEL maintainer.email="sagemwright@gmail.com" + +# Install dependencies via apt-get; cleanup apt garbage +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + procps && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +# install genoflu via bioconda; install into 'base' conda env +RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ + genoflu=${GENOFLU_VER} && \ + micromamba clean --all --yes + + +# ENV instructions set environment variables that persist from the build into the resulting image +# hardcode 'base' env bin into PATH, so conda env does not have to be "activated" at run time +ENV PATH="/opt/conda/bin:${PATH}" + +# WORKDIR sets working directory +WORKDIR /data + +# default command is to pull up help options for genoflu +CMD [ "genoflu.py", "--help" ] + +# A second FROM insruction creates a new stage +# We use `test` for the test image +FROM app as test + +# getting all the exectubles in bin +RUN genoflu.py --help && genoflu.py --version + +# testing a genome +RUN wget -q https://raw.githubusercontent.com/USDA-VS/GenoFLU/main/test/test-genome-A1.fasta && \ + genoflu.py -f test-genome-A1.fasta \ No newline at end of file From c7436d88017b65497f71d59edd8940cab8690b5f Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Wed, 10 Jul 2024 17:53:24 +0000 Subject: [PATCH 02/22] add readme --- genoflu/{1.0.3 => 1.03}/Dockerfile | 3 ++- genoflu/README.md | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) rename genoflu/{1.0.3 => 1.03}/Dockerfile (95%) create mode 100644 genoflu/README.md diff --git a/genoflu/1.0.3/Dockerfile b/genoflu/1.03/Dockerfile similarity index 95% rename from genoflu/1.0.3/Dockerfile rename to genoflu/1.03/Dockerfile index 9a168edfe..93ee5c4f4 100644 --- a/genoflu/1.0.3/Dockerfile +++ b/genoflu/1.03/Dockerfile @@ -3,7 +3,7 @@ FROM mambaorg/micromamba:1.5.8 as app USER root WORKDIR / -ARG GENOFLU_VER="1.0.3" +ARG GENOFLU_VER="1.03-0" # LABEL instructions tag the image with metadata that might be important to the user LABEL base.image="micromamba:1.5.8" @@ -24,6 +24,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ apt-get autoclean && rm -rf /var/lib/apt/lists/* # install genoflu via bioconda; install into 'base' conda env +# genoflu is not recognized in micromamba by the version tag RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ genoflu=${GENOFLU_VER} && \ micromamba clean --all --yes diff --git a/genoflu/README.md b/genoflu/README.md new file mode 100644 index 000000000..f24fd2c97 --- /dev/null +++ b/genoflu/README.md @@ -0,0 +1,24 @@ +# GenoFLU container + +Main tool: [GenoFLU](https://github.com/USDA-VS/GenoFLU) + +Code repository: https://github.com/USDA-VS/GenoFLU + +Additional tools: + +Basic information on how to use this tool: + +- executable: genoflu.py +- help: --help +- version: --version +- description: "GenoFLU determines the genotype of a segmented flu sample by BLASTing a multi-segment FASTA against the BLAST database" + +Additional information: + +Full documentation: [https://github.com/USDA-VS/GenoFLU](https://github.com/USDA-VS/GenoFLU) + +## Example Usage + +```bash +genoflu.py -f input.fasta +``` From 974d6e190e31cd5f43f4aa5616028c9f4591e1cf Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Wed, 10 Jul 2024 17:56:56 +0000 Subject: [PATCH 03/22] add to license --- Program_Licenses.md | 1 + README.md | 1 + 2 files changed, 2 insertions(+) diff --git a/Program_Licenses.md b/Program_Licenses.md index 784acebde..f94868838 100644 --- a/Program_Licenses.md +++ b/Program_Licenses.md @@ -59,6 +59,7 @@ The licenses of the open-source software that is contained in these Docker image | Freyja | BSD-2 | https://github.com/andersen-lab/Freyja/blob/main/LICENSE | | GAMBIT | GNU aGPLv3 | https://github.com/jlumpe/gambit/blob/master/LICENSE | | GAMMA | Apache 2.0 | https://github.com/rastanton/GAMMA/blob/main/LICENSE | +| GenoFlu | GNU GPL v3 | https://github.com/USDA-VS/GenoFLU/blob/main/LICENSE | | Genotyphi | GNU GPLv3 | https://github.com/katholt/genotyphi/blob/main/LICENSE | | geNomad | ACADEMIC, INTERNAL, RESEARCH & DEVELOPMENT, NON-COMMERCIAL USE ONLY | https://github.com/apcamargo/genomad/blob/main/LICENSE | | GenoVi | BY-NC-SA Creative Commons License | https://github.com/robotoD/GenoVi/blob/main/LICENSE.txt | diff --git a/README.md b/README.md index 850159237..ce62aaeb6 100644 --- a/README.md +++ b/README.md @@ -164,6 +164,7 @@ To learn more about the docker pull rate limits and the open source software pro | [Freyja](https://hub.docker.com/r/staphb/freyja)
[![docker pulls](https://badgen.net/docker/pulls/staphb/freyja)](https://hub.docker.com/r/staphb/freyja) |
  • [1.2](./freyja/1.2/)
  • [1.2.1](./freyja/1.2.1/)
  • [1.3.1](./freyja/1.3.1/)
  • [1.3.2](./freyja/1.3.2/)
  • [1.3.4](./freyja/1.3.4/)
  • [1.3.7](./freyja/1.3.7/)
  • [1.3.8](./freyja/1.3.8/)
  • [1.3.9](./freyja/1.3.9/)
  • [1.3.10](./freyja/1.3.10/)
  • [1.3.11](./freyja/1.3.11/)
  • [1.3.12](./freyja/1.3.12/)
  • [1.4.2](./freyja/1.4.2/)
  • [1.4.3](freyja/1.4.3/)
  • [1.4.4](freyja/1.4.4/)
  • [1.4.5](freyja/1.4.5/)
  • [1.4.7](freyja/1.4.7/)
  • [1.4.8](freyja/1.4.8/)
  • [1.4.9](freyja/1.4.9/)
  • [1.5.0](freyja/1.5.0/)
  • [1.5.1](freyja/1.5.1/)
| https://github.com/andersen-lab/Freyja | | [GAMBIT](https://hub.docker.com/r/staphb/gambit)
[![docker pulls](https://badgen.net/docker/pulls/staphb/gambit)](https://hub.docker.com/r/staphb/gambit) |
  • 0.3.0
  • 0.4.0
  • 0.5.0
  • 1.0.0
| https://github.com/jlumpe/gambit | | [GAMMA](https://hub.docker.com/r/staphb/gamma)
[![docker pulls](https://badgen.net/docker/pulls/staphb/gamma)](https://hub.docker.com/r/staphb/gamma) |
  • 1.4
  • 2.1
  • 2.2
| https://github.com/rastanton/GAMMA/ | +| [GenoFLU](https://hub.docker.com/r/staphb/genoflu)
[![docker pulls](https://badgen.net/docker/pulls/staphb/genoflu)]() |
  • [1.03](genoflu/1.03/)
| https://github.com/USDA-VS/GenoFLU | | [geNomad](https://hub.docker.com/r/staphb/genomad)
[![docker pulls](https://badgen.net/docker/pulls/staphb/genomad)](https://hub.docker.com/r/staphb/genomad) |
  • [1.7.4](./genomad/1.7.4/)
  • [1.8.0](./genomad/1.8.0/)
| https://github.com/apcamargo/genomad | | [GenoVi](https://hub.docker.com/r/staphb/genovi)
[![docker pulls](https://badgen.net/docker/pulls/staphb/genovi)](https://hub.docker.com/r/staphb/genovi) |
  • [0.2.16](./genovi/0.2.16/)
| https://github.com/robotoD/GenoVi | | [gfastats](https://hub.docker.com/r/staphb/gfastats)
[![docker pulls](https://badgen.net/docker/pulls/staphb/gfastats)](https://hub.docker.com/r/staphb/gfastats) |
  • [1.3.6](./gfastats/1.3.6/)
  • [1.3.7](./gfastats/1.3.7/)
| https://github.com/vgl-hub/gfastats | From bef89c2aeaa2a7d5adff9b1dbd33671b923dd9fe Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 11 Jul 2024 14:31:35 +0000 Subject: [PATCH 04/22] add --force-pkgs-dirs --- genoflu/1.03/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/genoflu/1.03/Dockerfile b/genoflu/1.03/Dockerfile index 93ee5c4f4..074535ea5 100644 --- a/genoflu/1.03/Dockerfile +++ b/genoflu/1.03/Dockerfile @@ -27,7 +27,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ # genoflu is not recognized in micromamba by the version tag RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ genoflu=${GENOFLU_VER} && \ - micromamba clean --all --yes + micromamba clean --all --force-pkgs-dirs --yes # ENV instructions set environment variables that persist from the build into the resulting image From 7fc8de3430348640d8129b8a33e62cc4c99377f5 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 10 Oct 2024 14:18:51 +0000 Subject: [PATCH 05/22] krakentools add --- krakentools/d4a2fbe/Dockerfile | 48 ++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 krakentools/d4a2fbe/Dockerfile diff --git a/krakentools/d4a2fbe/Dockerfile b/krakentools/d4a2fbe/Dockerfile new file mode 100644 index 000000000..424c6ab36 --- /dev/null +++ b/krakentools/d4a2fbe/Dockerfile @@ -0,0 +1,48 @@ +FROM ubuntu:jammy as app + +WORKDIR / + +# using a git commit because the last release was over three years ago,, despite recent(ish) activity in the repo's main branch +ARG KRAKENTOOLS_VERSION="d4a2fbe2833c2392a724697c0c97a3014e748474" + +# 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="KrakenTools" +LABEL software.version=${KRAKENTOOLS_VERSION} +LABEL description="KrakenTools is a set of tools for processing Kraken output" +LABEL website="https://github.com/jenniferlu717/KrakenTools" +LABEL documentation="https://github.com/jenniferlu717/KrakenTools" +LABEL license="https://github.com/jenniferlu717/KrakenTools/blob/master/LICENSE" +LABEL maintainer="Sage Wright" +LABEL maintainer.email="sagemwright@gmail.com" + + +# Install dependencies via apt-get; cleanup apt garbage +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + python3 \ + python3-pip \ + python3-setuptools \ + gawk \ + jq \ + git \ + procps && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +RUN pip install biopython \ + pandas + +RUN git clone https://github.com/jenniferlu717/KrakenTools.git && \ + cd KrakenTools && \ + git checkout ${KRAKENTOOLS_VERSION} && \ + chmod +x * + +ENV PATH=/KrakenTools:${PATH} + +WORKDIR /data + +FROM app as test + +RUN python3 /KrakenTools/extract_kraken_reads.py --help \ No newline at end of file From 4327e5d82fef9cc68869afb93346de6f9ae1672c Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 10 Oct 2024 14:33:36 +0000 Subject: [PATCH 06/22] update readmes --- Program_Licenses.md | 1 + README.md | 3 ++- krakentools/d4a2fbe/README.md | 24 ++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 krakentools/d4a2fbe/README.md diff --git a/Program_Licenses.md b/Program_Licenses.md index a3d94a8a1..075159da6 100644 --- a/Program_Licenses.md +++ b/Program_Licenses.md @@ -85,6 +85,7 @@ The licenses of the open-source software that is contained in these Docker image | kma | Apache v2.0 | https://bitbucket.org/genomicepidemiology/kma/src/master/ | | Kraken | GNU GPLv3 | https://github.com/DerrickWood/kraken/blob/master/LICENSE | | Kraken2 | MIT | https://github.com/DerrickWood/kraken2/blob/master/LICENSE | +| KrakenTools | GNU GPLv3 | https://github.com/jenniferlu717/KrakenTools/blob/master/LICENSE | | KrakenUniq | GNU GPLv3 | https://github.com/fbreitwieser/krakenuniq/blob/master/LICENSE | | kSNP3 | BSD | available in zipped kSNP archive on sourceforge or in docker image under `/kSNP3.1_Linux_package/THE BSD OPENSOURCE LICENSE.pdf` | | kSNP4 | BSD | available in zipped kSNP archive on sourceforge or in docker image under `/opt/kSNP4 Linux package/Documentation/THE BSD OPENSOURCE LICENSE.pdf` | diff --git a/README.md b/README.md index 6977eded9..99e828f9a 100644 --- a/README.md +++ b/README.md @@ -193,7 +193,8 @@ To learn more about the docker pull rate limits and the open source software pro | [Kleborate](https://hub.docker.com/r/staphb/kleborate/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kleborate)](https://hub.docker.com/r/staphb/kleborate) |
  • [2.0.4](./kleborate/2.0.4/)
  • [2.1.0](./kleborate/2.1.0/)
  • [2.2.0](./kleborate/2.3.2/)
  • [2.3.2](./kleborate/2.3.2)
  • [2.3.2-2023-05](kleborate/2.3.2-2023-05/)
  • [2.4.1](kleborate/2.4.1/)
| https://github.com/katholt/Kleborate/
https://github.com/katholt/Kaptive/ | | [kma](https://hub.docker.com/r/staphb/kma/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kma)](https://hub.docker.com/r/staphb/kma) |
  • 1.2.21
  • 1.4.10 (no database)
  • [1.4.14](./kma/1.4.14/) (no database)
| https://bitbucket.org/genomicepidemiology/kma/ | | [Kraken](https://hub.docker.com/r/staphb/kraken/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kraken)](https://hub.docker.com/r/staphb/kraken) |
  • 1.0
  • 1.1.1
  • 1.1.1 (no database)
| https://github.com/DerrickWood/kraken | -| [Kraken2](https://hub.docker.com/r/staphb/kraken2/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kraken2)](https://hub.docker.com/r/staphb/kraken2) |
  • 2.0.8-beta (no database)
  • 2.0.8-beta (MiniKraken2_v1_8GB db)
  • 2.0.8-beta_hv (human + virus db)
  • 2.0.9-beta (no db)
  • 2.0.9-beta (Minikraken v2 RefSeq: bacteria, archaea, viral, and human 8GB db)
  • 2.1.0 (no db)
  • 2.1.1 (no db)
  • 2.1.2 (no db)
  • [2.1.3](kraken2/2.1.3/) (no db)
| https://github.com/DerrickWood/kraken2 | +| [Kraken2](https://hub.docker.com/r/staphb/kraken2/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/kraken2)](https://hub.docker.com/r/staphb/kraken2) |
  • 2.0.8-beta (no database)
  • 2.0.8-beta (MiniKraken2_v1_8GB db)
  • 2.0.8-beta_hv (human + virus db)
  • 2.0.9-beta (no db)
  • 2.0.9-beta (Minikraken v2 RefSeq: bacteria, archaea, viral, and human 8GB db)
  • 2.1.0 (no db)
  • 2.1.1 (no db)
  • 2.1.2 (no db)
  • [2.1.3](kraken2/2.1.3/) (no db)
| https://github.com/DerrickWood/kraken2 | +| [KrakenTools](https://github.com/jenniferlu717/KrakenTools)
[![docker pulls](https://badgen.net/docker/pulls/staphb/krakentools)](https://hub.docker.com/r/staphb/krakentools) |
  • [d4a2fbe](./krakentools/d4a2fbe)
| https://github.com/jenniferlu717/KrakenTools | | [KrakenUniq](https://hub.docker.com/r/staphb/krakenuniq/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/krakenuniq)](https://hub.docker.com/r/staphb/krakenuniq) |
  • [1.0.4](./krakenuniq/1.0.4) (no database)
| https://github.com/fbreitwieser/krakenuniq | | [kSNP3](https://hub.docker.com/r/staphb/ksnp3/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ksnp3)](https://hub.docker.com/r/staphb/ksnp3)|
  • 3.1
| https://sourceforge.net/projects/ksnp/ | | [kSNP4](https://hub.docker.com/r/staphb/ksnp4/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ksnp4)](https://hub.docker.com/r/staphb/ksnp4)|
  • 4.0
  • [4.1](./ksnp4/4.1/)
| https://sourceforge.net/projects/ksnp/ | diff --git a/krakentools/d4a2fbe/README.md b/krakentools/d4a2fbe/README.md new file mode 100644 index 000000000..06980bc4c --- /dev/null +++ b/krakentools/d4a2fbe/README.md @@ -0,0 +1,24 @@ +# KrakenTools container + +Main tool [KrakenTools](https://github.com/jenniferlu717/KrakenTools) + +Code repository: https://github.com/jenniferlu717/KrakenTools + +Additional tools: + +Basic information on how to use this tool: + +- executable: various python scripts +- help: most scripts have -h options +- version: most scripts do not have versioning information +- description: "KrakenTools is a suite of scripts to be used alongside the Kraken, KrakenUniq, Kraken 2, or Bracken programs. These scripts are designed to help Kraken users with downstream analysis of Kraken results." + +Additional information: + +Full documentation: [https://github.com/jenniferlu717/KrakenTools](https://github.com/jenniferlu717/KrakenTools) + +## Example Usage + +```bash +python3 /KrakenTools/extract_kraken_reads.py -h +``` From 25cd73ab60baf9a99e3ced13b327dd6ae63817e2 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Tue, 22 Oct 2024 19:06:59 +0000 Subject: [PATCH 07/22] silence warnings about AS casing; fix typo --- krakentools/d4a2fbe/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/krakentools/d4a2fbe/Dockerfile b/krakentools/d4a2fbe/Dockerfile index 424c6ab36..fddb91690 100644 --- a/krakentools/d4a2fbe/Dockerfile +++ b/krakentools/d4a2fbe/Dockerfile @@ -1,8 +1,8 @@ -FROM ubuntu:jammy as app +FROM ubuntu:jammy AS app WORKDIR / -# using a git commit because the last release was over three years ago,, despite recent(ish) activity in the repo's main branch +# using a git commit because the last release was over three years ago, despite recent(ish) activity in the repo's main branch ARG KRAKENTOOLS_VERSION="d4a2fbe2833c2392a724697c0c97a3014e748474" # LABEL instructions tag the image with metadata that might be important to the user @@ -43,6 +43,6 @@ ENV PATH=/KrakenTools:${PATH} WORKDIR /data -FROM app as test +FROM app AS test RUN python3 /KrakenTools/extract_kraken_reads.py --help \ No newline at end of file From da6080d0f41fde445c571272af9ddac403132863 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Tue, 22 Oct 2024 19:10:03 +0000 Subject: [PATCH 08/22] added comment in dockerfile & added additional dependencies and versions to readme for krakentools --- krakentools/d4a2fbe/Dockerfile | 1 + krakentools/d4a2fbe/README.md | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/krakentools/d4a2fbe/Dockerfile b/krakentools/d4a2fbe/Dockerfile index fddb91690..d84b72c39 100644 --- a/krakentools/d4a2fbe/Dockerfile +++ b/krakentools/d4a2fbe/Dockerfile @@ -3,6 +3,7 @@ FROM ubuntu:jammy AS app WORKDIR / # using a git commit because the last release was over three years ago, despite recent(ish) activity in the repo's main branch +# this commit is from 2023-11-16: https://github.com/jenniferlu717/KrakenTools/commit/d4a2fbe2833c2392a724697c0c97a3014e748474 ARG KRAKENTOOLS_VERSION="d4a2fbe2833c2392a724697c0c97a3014e748474" # LABEL instructions tag the image with metadata that might be important to the user diff --git a/krakentools/d4a2fbe/README.md b/krakentools/d4a2fbe/README.md index 06980bc4c..42da8cc6a 100644 --- a/krakentools/d4a2fbe/README.md +++ b/krakentools/d4a2fbe/README.md @@ -6,6 +6,11 @@ Code repository: https://github.com/jenniferlu717/KrakenTools Additional tools: +- python 3.10.6 +- biopython 1.84 +- pandas 2.2.3 +- numpy 2.1.2 + Basic information on how to use this tool: - executable: various python scripts From f4b3565917a511a080f653e697899e962dcab6b0 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Wed, 23 Oct 2024 16:06:04 +0000 Subject: [PATCH 09/22] pinning biopython and pandas versions and removing unnecessary jq and gawk --- krakentools/d4a2fbe/Dockerfile | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/krakentools/d4a2fbe/Dockerfile b/krakentools/d4a2fbe/Dockerfile index d84b72c39..20691e85e 100644 --- a/krakentools/d4a2fbe/Dockerfile +++ b/krakentools/d4a2fbe/Dockerfile @@ -26,14 +26,12 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ python3 \ python3-pip \ python3-setuptools \ - gawk \ - jq \ git \ procps && \ apt-get autoclean && rm -rf /var/lib/apt/lists/* -RUN pip install biopython \ - pandas +RUN pip install biopython==1.84 \ + pandas==2.2.3 RUN git clone https://github.com/jenniferlu717/KrakenTools.git && \ cd KrakenTools && \ From 3eb82abebaab448ea9a2f306a198259ec4659af4 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Wed, 23 Oct 2024 16:17:55 +0000 Subject: [PATCH 10/22] fixed version of python installed listed in krakentools readme --- krakentools/d4a2fbe/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/krakentools/d4a2fbe/README.md b/krakentools/d4a2fbe/README.md index 42da8cc6a..8794ae695 100644 --- a/krakentools/d4a2fbe/README.md +++ b/krakentools/d4a2fbe/README.md @@ -6,7 +6,7 @@ Code repository: https://github.com/jenniferlu717/KrakenTools Additional tools: -- python 3.10.6 +- python 3.10.12 - biopython 1.84 - pandas 2.2.3 - numpy 2.1.2 From 570fccb30f41155e51c3675963b7753353526de6 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 31 Oct 2024 18:26:40 +0000 Subject: [PATCH 11/22] add tbprofiler 6.4.0 --- README.md | 2 +- tbprofiler/6.4.0/Dockerfile | 65 +++++++++++++++++++++++++++++++++++++ tbprofiler/6.4.0/README.md | 58 +++++++++++++++++++++++++++++++++ 3 files changed, 124 insertions(+), 1 deletion(-) create mode 100644 tbprofiler/6.4.0/Dockerfile create mode 100644 tbprofiler/6.4.0/README.md diff --git a/README.md b/README.md index 99e828f9a..8a3b43cbe 100644 --- a/README.md +++ b/README.md @@ -297,7 +297,7 @@ To learn more about the docker pull rate limits and the open source software pro | [Staramr](https://hub.docker.com/r/staphb/staramr/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/staramr)](https://hub.docker.com/r/staphb/staramr) |
  • [0.5.1](./staramr/0.5.1/)
  • [0.7.1](./staramr/0.7.1/)
  • [0.8.0](./staramr/0.8.0/)
  • [0.10.0](./staramr/0.10.0/)
| https://github.com/phac-nml/staramr | | [stxtyper](https://hub.docker.com/r/staphb/stxtyper)
[![docker pulls](https://badgen.net/docker/pulls/staphb/stxtyper)](https://hub.docker.com/r/staphb/stxtyper) |
  • [1.0.24](stxtyper/1.0.24)
| https://github.com/ncbi/stxtyper | | [sylph](https://hub.docker.com/r/staphb/sylph)
[![docker pulls](https://badgen.net/docker/pulls/staphb/sylph)](https://hub.docker.com/r/staphb/sylph) |
  • [0.4.1](./sylph/0.4.1)
  • [0.5.1](./sylph/0.5.1)
  • [0.6.0](./sylph/0.6.0)
  • [0.6.1](./sylph/0.6.1)
| https://github.com/bluenote-1577/sylph | -| [TBProfiler](https://hub.docker.com/r/staphb/tbprofiler/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tbprofiler)](https://hub.docker.com/r/staphb/tbprofiler) |
  • [4.3.0](./tbprofiler/4.3.0/)
  • [4.4.0](./tbprofiler/4.4.0/)
  • [4.4.2](./tbprofiler/4.4.2/)
  • [5.0.1](tbprofiler/5.0.1/)
  • [6.2.0](tbprofiler/6.2.0/)
  • [6.2.1](tbprofiler/6.2.1/)
  • [6.3.0](tbprofiler/6.3.0/)
| https://github.com/jodyphelan/TBProfiler | +| [TBProfiler](https://hub.docker.com/r/staphb/tbprofiler/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tbprofiler)](https://hub.docker.com/r/staphb/tbprofiler) |
  • [4.3.0](./tbprofiler/4.3.0/)
  • [4.4.0](./tbprofiler/4.4.0/)
  • [4.4.2](./tbprofiler/4.4.2/)
  • [5.0.1](tbprofiler/5.0.1/)
  • [6.2.0](tbprofiler/6.2.0/)
  • [6.2.1](tbprofiler/6.2.1/)
  • [6.3.0](tbprofiler/6.3.0/)
  • [6.4.0](tbprofiler/6.4.0/)
| https://github.com/jodyphelan/TBProfiler | | [TipToft](https://hub.docker.com/r/staphb/tiptoft/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tiptoft)](https://hub.docker.com/r/staphb/tiptoft) |
  • 1.0.0
  • 1.0.2
| https://github.com/andrewjpage/tiptoft | | [Tostadas](https://hub.docker.com/r/staphb/tostadas/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tostadas)](https://hub.docker.com/r/staphb/tostadas) |
  • [0.2.0-beta](./tostadas/0.2.0-beta/)
  • [3.1.0](./tostadas/3.1.0/)
| https://github.com/CDCgov/tostadas | | [Treemmer](https://hub.docker.com/r/staphb/treemmer/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/treemmer)](https://hub.docker.com/r/staphb/treemmer) |
  • 0.3
| https://git.scicore.unibas.ch/TBRU/Treemmer (archived, moved to GitHub)
https://github.com/fmenardo/Treemmer | diff --git a/tbprofiler/6.4.0/Dockerfile b/tbprofiler/6.4.0/Dockerfile new file mode 100644 index 000000000..d87c78505 --- /dev/null +++ b/tbprofiler/6.4.0/Dockerfile @@ -0,0 +1,65 @@ +FROM mambaorg/micromamba:1.5.8 as app + +USER root +WORKDIR / + +ARG TBPROFILER_VER="6.4.0" + +# this version is the shortened commit hash on the `master` branch here https://github.com/jodyphelan/tbdb/ +# commits are found on https://github.com/jodyphelan/tbdb/commits/master +# this was the latest commit as of 2024-10-31 +ARG TBDB_COMMIT="2c92475219416a449e89782f2b768149d26f7979" + +# LABEL instructions tag the image with metadata that might be important to the user +LABEL base.image="micromamba:1.5.8" +LABEL dockerfile.version="1" +LABEL software="tbprofiler" +LABEL software.version="${TBPROFILER_VER}" +LABEL description="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." +LABEL website="https://github.com/jodyphelan/TBProfiler/" +LABEL license="https://github.com/jodyphelan/TBProfiler/blob/master/LICENSE" +LABEL maintainer="John Arnn" +LABEL maintainer.email="jarnn@utah.gov" +LABEL maintainer2="Curtis Kapsak" +LABEL maintainer2.email="kapsakcj@gmail.com" +LABEL maintainer3="Sage Wright" +LABEL maintainer3.email="sagemwright@gmail.com" + +# Install dependencies via apt-get; cleanup apt garbage +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + procps && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +# install tb-profiler via bioconda; install into 'base' conda env +RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ + tb-profiler=${TBPROFILER_VER} && \ + micromamba clean --all --yes -f + +# hardcode 'base' env bin into PATH, so conda env does not have to be "activated" at run time +ENV PATH="/opt/conda/bin:${PATH}" + +# Version of database can be confirmed at /opt/conda/share/tbprofiler/tbdb.version.json +# can also run 'tb-profiler list_db' to find the same version info + +# https://github.com/jodyphelan/tbdb +RUN tb-profiler update_tbdb --commit ${TBDB_COMMIT} + +WORKDIR /data + +# Added command to bring help menu up upon running container. +CMD tb-profiler + +# test stage +FROM app as test + +# checking if tool is in PATH +RUN tb-profiler && tb-profiler version + +WORKDIR /tests + +# download some TB FASTQs and run through tb-profiler +RUN wget -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR166/009/ERR1664619/ERR1664619_1.fastq.gz && \ + wget -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR166/009/ERR1664619/ERR1664619_2.fastq.gz && \ + tb-profiler profile -1 ERR1664619_1.fastq.gz -2 ERR1664619_2.fastq.gz -t 2 -p ERR1664619 --txt diff --git a/tbprofiler/6.4.0/README.md b/tbprofiler/6.4.0/README.md new file mode 100644 index 000000000..c642cc0b1 --- /dev/null +++ b/tbprofiler/6.4.0/README.md @@ -0,0 +1,58 @@ +# TBProfiler Container + +Main tool: [TBProfiler](https://github.com/jodyphelan/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. + +## Database + +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 `97b5876`. 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`: + +```bash +$ grep 'commit' /opt/conda/share/tbprofiler/tbdb.version.json +{"name": "tbdb", "commit": "5f3c51e", "Merge": "b1a2549 abddb8e", "Author": "Jody Phelan ", "Date": "Thu Jan 19 10:47:32 2023 +0000"} +``` + +Additionally you can run the command `tb-profiler list_db` to list the same information + +```bash +$ tb-profiler list_db +tbdb 97b5876 Jody Phelan Wed May 8 13:53:15 2024 +0100 /opt/conda/share/tbprofiler/tbdb +``` + +## Additional included tools/dependencies + +- bedtools 2.31.1 +- gatk4 4.5.0.0 +- kmc 3.2.4 +- pathogen-profiler 4.5.0 +- perl 5.32.1 +- python 3.10.14 +- trimmomatic 0.39 +- bwa 0.7.18 +- minimap2 2.28 +- samtools 1.20 +- bcftools 1.20 +- freebayes 1.3.6 +- tqdm 4.66.4 +- parallel 20240522 +- samclip 0.4.0 +- snpeff 5.2 + +## Example Usage + +Run whole pipeline on Illumina paired-end reads: + +```bash +tb-profiler profile -1 ERR1664619_1.fastq.gz -2 ERR1664619_2.fastq.gz -t 4 -p ERR1664619 --txt +``` + +Make alternative database: + +```bash +tb-profiler create_db --prefix +tb-profiler load_library --prefix +``` + +## Updates +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.](https://jodyphelan.gitbook.io/tb-profiler/) From f650fcbc234900e615ed105a4ab36374a366a77b Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 31 Oct 2024 18:32:40 +0000 Subject: [PATCH 12/22] update readme --- tbprofiler/6.4.0/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tbprofiler/6.4.0/README.md b/tbprofiler/6.4.0/README.md index c642cc0b1..c9a2dd110 100644 --- a/tbprofiler/6.4.0/README.md +++ b/tbprofiler/6.4.0/README.md @@ -6,18 +6,18 @@ The pipeline aligns reads to the H37Rv reference using bowtie2, BWA or minimap2 ## Database -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 `97b5876`. 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`: +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 `2c92475`. This is from the GitHub repository https://github.com/jodyphelan/tbdb. This can be confirmed in the json file: `/opt/conda/share/tbprofiler/tbdb.variables.json`: ```bash -$ grep 'commit' /opt/conda/share/tbprofiler/tbdb.version.json -{"name": "tbdb", "commit": "5f3c51e", "Merge": "b1a2549 abddb8e", "Author": "Jody Phelan ", "Date": "Thu Jan 19 10:47:32 2023 +0000"} +$ grep 'commit' /opt/conda/share/tbprofiler/tbdb.variables.json +{"db-schema-version": "1.0.0", "snpEff_db": "Mycobacterium_tuberculosis_h37rv", "drugs": ["rifampicin", "isoniazid", "ethambutol", "pyrazinamide", "moxifloxacin", "levofloxacin", "bedaquiline", "delamanid", "pretomanid", "linezolid", "streptomycin", "amikacin", "kanamycin", "capreomycin", "clofazimine", "ethionamide", "para-aminosalicylic_acid", "cycloserine"], "tb-profiler-version": ">=6.0.0,<7.0.0", "version": {"name": "tbdb", "commit": "2c92475", "Merge": "8918884 2a51937", "Author": "Jody Phelan ", "Date": "Mon Oct 7 17:06:42 2024 +0100", "db-schema-version": "1.0.0"}, "amplicon": false, "files": {"ref": "tbdb.fasta", "gff": "tbdb.gff", "bed": "tbdb.bed", "json_db": "tbdb.dr.json", "variables": "tbdb.variables.json", "spoligotype_spacers": "tbdb.spoligotype_spacers.txt", "spoligotype_annotations": "tbdb.spoligotype_list.csv", "bedmask": "tbdb.mask.bed", "barcode": "tbdb.barcode.bed", "rules": "tbdb.rules.txt"}} ``` Additionally you can run the command `tb-profiler list_db` to list the same information ```bash $ tb-profiler list_db -tbdb 97b5876 Jody Phelan Wed May 8 13:53:15 2024 +0100 /opt/conda/share/tbprofiler/tbdb +tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 +0100 /opt/conda/share/tbprofiler/tbdb ``` ## Additional included tools/dependencies @@ -55,4 +55,5 @@ tb-profiler load_library --prefix ``` ## Updates + 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.](https://jodyphelan.gitbook.io/tb-profiler/) From b6837a0fd3d85fa759b1ea0b2b849f864f678620 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 31 Oct 2024 18:40:12 +0000 Subject: [PATCH 13/22] add list_db --- tbprofiler/6.4.0/Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tbprofiler/6.4.0/Dockerfile b/tbprofiler/6.4.0/Dockerfile index d87c78505..34ea7f341 100644 --- a/tbprofiler/6.4.0/Dockerfile +++ b/tbprofiler/6.4.0/Dockerfile @@ -44,7 +44,8 @@ ENV PATH="/opt/conda/bin:${PATH}" # can also run 'tb-profiler list_db' to find the same version info # https://github.com/jodyphelan/tbdb -RUN tb-profiler update_tbdb --commit ${TBDB_COMMIT} +RUN tb-profiler update_tbdb --commit ${TBDB_COMMIT} && \ + tb-profiler list_db WORKDIR /data From 245b7b6818652cc19ad69f91d85f02eaa83d0584 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 31 Oct 2024 18:41:43 +0000 Subject: [PATCH 14/22] exec format, capitalize AS --- tbprofiler/6.4.0/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tbprofiler/6.4.0/Dockerfile b/tbprofiler/6.4.0/Dockerfile index 34ea7f341..de445f614 100644 --- a/tbprofiler/6.4.0/Dockerfile +++ b/tbprofiler/6.4.0/Dockerfile @@ -1,4 +1,4 @@ -FROM mambaorg/micromamba:1.5.8 as app +FROM mambaorg/micromamba:1.5.8 AS app USER root WORKDIR / @@ -50,10 +50,10 @@ RUN tb-profiler update_tbdb --commit ${TBDB_COMMIT} && \ WORKDIR /data # Added command to bring help menu up upon running container. -CMD tb-profiler +CMD ["tb-profiler"] # test stage -FROM app as test +FROM app AS test # checking if tool is in PATH RUN tb-profiler && tb-profiler version From c1cd8c69876fe0977a16e3de137c8d2bd78a55b3 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 31 Oct 2024 18:58:11 +0000 Subject: [PATCH 15/22] update versions --- tbprofiler/6.4.0/README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tbprofiler/6.4.0/README.md b/tbprofiler/6.4.0/README.md index c9a2dd110..4d80a5847 100644 --- a/tbprofiler/6.4.0/README.md +++ b/tbprofiler/6.4.0/README.md @@ -23,19 +23,19 @@ tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 ## Additional included tools/dependencies - bedtools 2.31.1 -- gatk4 4.5.0.0 +- gatk4 4.6.1.0 - kmc 3.2.4 - pathogen-profiler 4.5.0 - perl 5.32.1 -- python 3.10.14 +- python 3.12.3 - trimmomatic 0.39 - bwa 0.7.18 - minimap2 2.28 -- samtools 1.20 -- bcftools 1.20 +- samtools 1.21 +- bcftools 1.21 - freebayes 1.3.6 -- tqdm 4.66.4 -- parallel 20240522 +- tqdm 4.66.6 +- parallel 20240922 - samclip 0.4.0 - snpeff 5.2 From 8ed51f38d8e88cbe8b23feb81ad225b1a9be0a76 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Fri, 1 Nov 2024 15:32:03 +0000 Subject: [PATCH 16/22] pinning delly version due to conflict resolution with usher 0.6.3 which is required by tb-profiler --- tbprofiler/6.4.0/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tbprofiler/6.4.0/Dockerfile b/tbprofiler/6.4.0/Dockerfile index de445f614..4eb676d4d 100644 --- a/tbprofiler/6.4.0/Dockerfile +++ b/tbprofiler/6.4.0/Dockerfile @@ -34,8 +34,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ # install tb-profiler via bioconda; install into 'base' conda env RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ - tb-profiler=${TBPROFILER_VER} && \ - micromamba clean --all --yes -f + tb-profiler=${TBPROFILER_VER} delly=1.2.6 && \ + micromamba clean --all --yes -f && micromamba list # hardcode 'base' env bin into PATH, so conda env does not have to be "activated" at run time ENV PATH="/opt/conda/bin:${PATH}" From 1e90eafcd43e1935903a7792f0d270498aa79ada Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Fri, 1 Nov 2024 15:34:23 +0000 Subject: [PATCH 17/22] added delly to list of deps for tb-profiler. Plus link to GH issue describing troubles w delly --- tbprofiler/6.4.0/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/tbprofiler/6.4.0/README.md b/tbprofiler/6.4.0/README.md index 4d80a5847..2460db6fa 100644 --- a/tbprofiler/6.4.0/README.md +++ b/tbprofiler/6.4.0/README.md @@ -38,6 +38,7 @@ tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 - parallel 20240922 - samclip 0.4.0 - snpeff 5.2 +- delly 1.2.6 (the more recent version 1.3.1 did not allow for the conda environment to resolve. More info here: https://github.com/jodyphelan/TBProfiler/issues/393#issuecomment-2452076859) ## Example Usage From e195bf793e479977f6266620b5f01b2f90b81ea8 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Wed, 20 Nov 2024 18:51:02 +0000 Subject: [PATCH 18/22] add 6.4.1 --- tbprofiler/6.4.1/Dockerfile | 66 +++++++++++++++++++++++++++++++++++++ tbprofiler/6.4.1/README.md | 60 +++++++++++++++++++++++++++++++++ 2 files changed, 126 insertions(+) create mode 100644 tbprofiler/6.4.1/Dockerfile create mode 100644 tbprofiler/6.4.1/README.md diff --git a/tbprofiler/6.4.1/Dockerfile b/tbprofiler/6.4.1/Dockerfile new file mode 100644 index 000000000..b25b3c18b --- /dev/null +++ b/tbprofiler/6.4.1/Dockerfile @@ -0,0 +1,66 @@ +FROM mambaorg/micromamba:1.5.8 AS app + +USER root +WORKDIR / + +ARG TBPROFILER_VER="6.4.1" + +# this version is the shortened commit hash on the `master` branch here https://github.com/jodyphelan/tbdb/ +# commits are found on https://github.com/jodyphelan/tbdb/commits/master +# this was the latest commit as of 2024-10-31 +ARG TBDB_COMMIT="2c92475219416a449e89782f2b768149d26f7979" + +# LABEL instructions tag the image with metadata that might be important to the user +LABEL base.image="micromamba:1.5.8" +LABEL dockerfile.version="1" +LABEL software="tbprofiler" +LABEL software.version="${TBPROFILER_VER}" +LABEL description="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." +LABEL website="https://github.com/jodyphelan/TBProfiler/" +LABEL license="https://github.com/jodyphelan/TBProfiler/blob/master/LICENSE" +LABEL maintainer="John Arnn" +LABEL maintainer.email="jarnn@utah.gov" +LABEL maintainer2="Curtis Kapsak" +LABEL maintainer2.email="kapsakcj@gmail.com" +LABEL maintainer3="Sage Wright" +LABEL maintainer3.email="sagemwright@gmail.com" + +# Install dependencies via apt-get; cleanup apt garbage +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + procps && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +# install tb-profiler via bioconda; install into 'base' conda env +RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ + tb-profiler=${TBPROFILER_VER} delly=1.2.6 && \ + micromamba clean --all --yes -f && micromamba list + +# hardcode 'base' env bin into PATH, so conda env does not have to be "activated" at run time +ENV PATH="/opt/conda/bin:${PATH}" + +# Version of database can be confirmed at /opt/conda/share/tbprofiler/tbdb.version.json +# can also run 'tb-profiler list_db' to find the same version info + +# https://github.com/jodyphelan/tbdb +RUN tb-profiler update_tbdb --commit ${TBDB_COMMIT} && \ + tb-profiler list_db + +WORKDIR /data + +# Added command to bring help menu up upon running container. +CMD ["tb-profiler"] + +# test stage +FROM app AS test + +# checking if tool is in PATH +RUN tb-profiler && tb-profiler version + +WORKDIR /tests + +# download some TB FASTQs and run through tb-profiler +RUN wget -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR166/009/ERR1664619/ERR1664619_1.fastq.gz && \ + wget -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR166/009/ERR1664619/ERR1664619_2.fastq.gz && \ + tb-profiler profile -1 ERR1664619_1.fastq.gz -2 ERR1664619_2.fastq.gz -t 2 -p ERR1664619 --txt diff --git a/tbprofiler/6.4.1/README.md b/tbprofiler/6.4.1/README.md new file mode 100644 index 000000000..b25b31dff --- /dev/null +++ b/tbprofiler/6.4.1/README.md @@ -0,0 +1,60 @@ +# TBProfiler Container + +Main tool: [TBProfiler](https://github.com/jodyphelan/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. + +## Database + +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 `2c92475`. This is from the GitHub repository https://github.com/jodyphelan/tbdb. This can be confirmed in the json file: `/opt/conda/share/tbprofiler/tbdb.variables.json`: + +```bash +$ grep 'commit' /opt/conda/share/tbprofiler/tbdb.variables.json +{"db-schema-version": "1.0.0", "snpEff_db": "Mycobacterium_tuberculosis_h37rv", "drugs": ["rifampicin", "isoniazid", "ethambutol", "pyrazinamide", "moxifloxacin", "levofloxacin", "bedaquiline", "delamanid", "pretomanid", "linezolid", "streptomycin", "amikacin", "kanamycin", "capreomycin", "clofazimine", "ethionamide", "para-aminosalicylic_acid", "cycloserine"], "tb-profiler-version": ">=6.0.0,<7.0.0", "version": {"name": "tbdb", "commit": "2c92475", "Merge": "8918884 2a51937", "Author": "Jody Phelan ", "Date": "Mon Oct 7 17:06:42 2024 +0100", "db-schema-version": "1.0.0"}, "amplicon": false, "files": {"ref": "tbdb.fasta", "gff": "tbdb.gff", "bed": "tbdb.bed", "json_db": "tbdb.dr.json", "variables": "tbdb.variables.json", "spoligotype_spacers": "tbdb.spoligotype_spacers.txt", "spoligotype_annotations": "tbdb.spoligotype_list.csv", "bedmask": "tbdb.mask.bed", "barcode": "tbdb.barcode.bed", "rules": "tbdb.rules.txt"}} +``` + +Additionally you can run the command `tb-profiler list_db` to list the same information + +```bash +$ tb-profiler list_db +tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 +0100 /opt/conda/share/tbprofiler/tbdb +``` + +## Additional included tools/dependencies + +- bedtools 2.31.1 +- gatk4 4.6.1.0 +- kmc 3.2.4 +- pathogen-profiler 4.5.1 +- perl 5.32.1 +- python 3.12.3 +- trimmomatic 0.39 +- bwa 0.7.18 +- minimap2 2.28 +- samtools 1.21 +- bcftools 1.21 +- freebayes 1.3.6 +- tqdm 4.66.6 +- parallel 20240922 +- samclip 0.4.0 +- snpeff 5.2 +- delly 1.2.6 (the more recent version 1.3.1 did not allow for the conda environment to resolve. More info here: https://github.com/jodyphelan/TBProfiler/issues/393#issuecomment-2452076859) + +## Example Usage + +Run whole pipeline on Illumina paired-end reads: + +```bash +tb-profiler profile -1 ERR1664619_1.fastq.gz -2 ERR1664619_2.fastq.gz -t 4 -p ERR1664619 --txt +``` + +Make alternative database: + +```bash +tb-profiler create_db --prefix +tb-profiler load_library --prefix +``` + +## Updates + +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.](https://jodyphelan.gitbook.io/tb-profiler/) From a35ae1b44595bb17c71ff2cfac4a933b89ffe95f Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Wed, 20 Nov 2024 18:51:38 +0000 Subject: [PATCH 19/22] update readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 87e8d20f5..686accabf 100644 --- a/README.md +++ b/README.md @@ -298,7 +298,7 @@ To learn more about the docker pull rate limits and the open source software pro | [Staramr](https://hub.docker.com/r/staphb/staramr/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/staramr)](https://hub.docker.com/r/staphb/staramr) |
  • [0.5.1](./staramr/0.5.1/)
  • [0.7.1](./staramr/0.7.1/)
  • [0.8.0](./staramr/0.8.0/)
  • [0.10.0](./staramr/0.10.0/)
| https://github.com/phac-nml/staramr | | [stxtyper](https://hub.docker.com/r/staphb/stxtyper)
[![docker pulls](https://badgen.net/docker/pulls/staphb/stxtyper)](https://hub.docker.com/r/staphb/stxtyper) |
  • [1.0.24](stxtyper/1.0.24/)
  • [1.0.27](stxtyper/1.0.27/)
| https://github.com/ncbi/stxtyper | | [sylph](https://hub.docker.com/r/staphb/sylph)
[![docker pulls](https://badgen.net/docker/pulls/staphb/sylph)](https://hub.docker.com/r/staphb/sylph) |
  • [0.4.1](./sylph/0.4.1)
  • [0.5.1](./sylph/0.5.1)
  • [0.6.0](./sylph/0.6.0)
  • [0.6.1](./sylph/0.6.1)
| https://github.com/bluenote-1577/sylph | -| [TBProfiler](https://hub.docker.com/r/staphb/tbprofiler/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tbprofiler)](https://hub.docker.com/r/staphb/tbprofiler) |
  • [4.3.0](./tbprofiler/4.3.0/)
  • [4.4.0](./tbprofiler/4.4.0/)
  • [4.4.2](./tbprofiler/4.4.2/)
  • [5.0.1](tbprofiler/5.0.1/)
  • [6.2.0](tbprofiler/6.2.0/)
  • [6.2.1](tbprofiler/6.2.1/)
  • [6.3.0](tbprofiler/6.3.0/)
  • [6.4.0](tbprofiler/6.4.0/)
| https://github.com/jodyphelan/TBProfiler | +| [TBProfiler](https://hub.docker.com/r/staphb/tbprofiler/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tbprofiler)](https://hub.docker.com/r/staphb/tbprofiler) |
  • [4.3.0](./tbprofiler/4.3.0/)
  • [4.4.0](./tbprofiler/4.4.0/)
  • [4.4.2](./tbprofiler/4.4.2/)
  • [5.0.1](tbprofiler/5.0.1/)
  • [6.2.0](tbprofiler/6.2.0/)
  • [6.2.1](tbprofiler/6.2.1/)
  • [6.3.0](tbprofiler/6.3.0/)
  • [6.4.0](tbprofiler/6.4.0/)
  • [6.4.1](tbprofiler/6.4.1/)
| https://github.com/jodyphelan/TBProfiler | | [TipToft](https://hub.docker.com/r/staphb/tiptoft/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tiptoft)](https://hub.docker.com/r/staphb/tiptoft) |
  • 1.0.0
  • 1.0.2
| https://github.com/andrewjpage/tiptoft | | [Tostadas](https://hub.docker.com/r/staphb/tostadas/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/tostadas)](https://hub.docker.com/r/staphb/tostadas) |
  • [0.2.0-beta](./tostadas/0.2.0-beta/)
  • [3.1.0](./tostadas/3.1.0/)
  • [4.0.0](./tostadas/4.0.0/)
| https://github.com/CDCgov/tostadas | | [Treemmer](https://hub.docker.com/r/staphb/treemmer/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/treemmer)](https://hub.docker.com/r/staphb/treemmer) |
  • 0.3
| https://git.scicore.unibas.ch/TBRU/Treemmer (archived, moved to GitHub)
https://github.com/fmenardo/Treemmer | From be5eb60b5fab60f42b59d8d9a17aa218d1b7c073 Mon Sep 17 00:00:00 2001 From: Curtis Kapsak Date: Wed, 20 Nov 2024 22:05:42 +0000 Subject: [PATCH 20/22] correct versions of a few dependencies in tbprofiler readme --- tbprofiler/6.4.1/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tbprofiler/6.4.1/README.md b/tbprofiler/6.4.1/README.md index b25b31dff..dbb1e1b78 100644 --- a/tbprofiler/6.4.1/README.md +++ b/tbprofiler/6.4.1/README.md @@ -27,14 +27,14 @@ tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 - kmc 3.2.4 - pathogen-profiler 4.5.1 - perl 5.32.1 -- python 3.12.3 +- python 3.12.7 - trimmomatic 0.39 - bwa 0.7.18 - minimap2 2.28 - samtools 1.21 - bcftools 1.21 - freebayes 1.3.6 -- tqdm 4.66.6 +- tqdm 4.67.0 - parallel 20240922 - samclip 0.4.0 - snpeff 5.2 From 094ea4fe2aff09d61a2c3115917a364a264cb2a4 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 21 Nov 2024 09:24:26 -0500 Subject: [PATCH 21/22] Update Dockerfile --- tbprofiler/6.4.1/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tbprofiler/6.4.1/Dockerfile b/tbprofiler/6.4.1/Dockerfile index b25b3c18b..20f95f4b5 100644 --- a/tbprofiler/6.4.1/Dockerfile +++ b/tbprofiler/6.4.1/Dockerfile @@ -34,7 +34,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ # install tb-profiler via bioconda; install into 'base' conda env RUN micromamba install --yes --name base --channel conda-forge --channel bioconda \ - tb-profiler=${TBPROFILER_VER} delly=1.2.6 && \ + tb-profiler=${TBPROFILER_VER} && \ micromamba clean --all --yes -f && micromamba list # hardcode 'base' env bin into PATH, so conda env does not have to be "activated" at run time From 4b5fef993949bfa7854be5cc5bfaa0f7f980aaf4 Mon Sep 17 00:00:00 2001 From: Sage Wright Date: Thu, 21 Nov 2024 09:24:57 -0500 Subject: [PATCH 22/22] Update README.md --- tbprofiler/6.4.1/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tbprofiler/6.4.1/README.md b/tbprofiler/6.4.1/README.md index dbb1e1b78..ccad82606 100644 --- a/tbprofiler/6.4.1/README.md +++ b/tbprofiler/6.4.1/README.md @@ -38,7 +38,7 @@ tbdb 2c92475 Jody Phelan Mon Oct 7 17:06:42 2024 - parallel 20240922 - samclip 0.4.0 - snpeff 5.2 -- delly 1.2.6 (the more recent version 1.3.1 did not allow for the conda environment to resolve. More info here: https://github.com/jodyphelan/TBProfiler/issues/393#issuecomment-2452076859) +- delly 1.2.6 (the more recent version 1.3.1 did not allow for the conda environment to resolve; TBProfiler has specifically pinned v1.2.6. More info here: https://github.com/jodyphelan/TBProfiler/issues/393#issuecomment-2452076859) ## Example Usage