diff --git a/Program_Licenses.md b/Program_Licenses.md index 055259ea3..7ef078c9f 100644 --- a/Program_Licenses.md +++ b/Program_Licenses.md @@ -39,6 +39,7 @@ The licenses of the open-source software that is contained in these Docker image | CirculoCov | GNU GPLv3 | https://github.com/erinyoung/CirculoCov/blob/main/LICENSE | | Clair3 | non-standard | https://github.com/HKU-BAL/Clair3/blob/main/LICENSE.md | | colorid | MIT | https://github.com/hcdenbakker/colorid/blob/master/LICENSE | +| Core-SNP-filter | GNU General Public License v3.0 | https://github.com/rrwick/Core-SNP-filter/blob/main/LICENSE | | datasets-sars-cov-2 | Apache 2.0 | https://github.com/CDCgov/datasets-sars-cov-2/blob/master/LICENSE | | diamond | GNU GPLv3 | https://github.com/bbuchfink/diamond/blob/master/LICENSE | | dnaapler | MIT | https://github.com/gbouras13/dnaapler/blob/main/LICENSE | diff --git a/README.md b/README.md index 4d879b3d4..bdc66221c 100644 --- a/README.md +++ b/README.md @@ -148,6 +148,7 @@ To learn more about the docker pull rate limits and the open source software pro | [Clair3](https://hub.docker.com/r/staphb/clair3)
[![docker pulls](https://badgen.net/docker/pulls/staphb/clair3)](https://hub.docker.com/r/staphb/clair3) | | https://github.com/HKU-BAL/Clair3 | | [Clustalo](https://hub.docker.com/r/staphb/clustalo)
[![docker pulls](https://badgen.net/docker/pulls/staphb/clustalo)](https://hub.docker.com/r/staphb/clustalo) | | http://www.clustal.org/omega/ | | [colorid](https://hub.docker.com/r/staphb/colorid)
[![docker pulls](https://badgen.net/docker/pulls/staphb/colorid)](https://hub.docker.com/r/staphb/colorid) | | https://github.com/hcdenbakker/colorid | +| [Core-SNP-filter](https://hub.docker.com/r/staphb/core-snp-filter)
[![docker pulls](https://badgen.net/docker/pulls/staphb/core-snp-filter)](https://hub.docker.com/r/staphb/core-snp-filter) | | https://github.com/rrwick/Core-SNP-filter | | [cutshaw-report-env](https://hub.docker.com/r/staphb/cutshaw-report-env)
[![docker pulls](https://badgen.net/docker/pulls/staphb/cutshaw-report-env)](https://hub.docker.com/r/staphb/cutshaw-report-env) | | https://github.com/VADGS/CutShaw | | [datasets-sars-cov-2](https://github.com/CDCgov/datasets-sars-cov-2)
[![docker pulls](https://badgen.net/docker/pulls/staphb/datasets-sars-cov-2)](https://hub.docker.com/r/staphb/datasets-sars-cov-2) | | https://github.com/CDCgov/datasets-sars-cov-2 | | [dnaapler](https://hub.docker.com/r/staphb/dnaapler)
[![docker pulls](https://badgen.net/docker/pulls/staphb/dnaapler)](https://hub.docker.com/r/staphb/dnaapler) | | https://github.com/gbouras13/dnaapler | diff --git a/core-snp-filter/0.2.0/Dockerfile b/core-snp-filter/0.2.0/Dockerfile new file mode 100644 index 000000000..5ac1b9bb4 --- /dev/null +++ b/core-snp-filter/0.2.0/Dockerfile @@ -0,0 +1,53 @@ +FROM ubuntu:jammy as app + +ARG CORESNPFILTER_VER="0.2.0" + +# '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="Core-SNP-filter" +LABEL software.version="${CORESNPFILTER_VER}" +LABEL description="This is a tool to filter sites (i.e. columns) in a FASTA-format whole-genome pseudo-alignment" +LABEL website="https://github.com/rrwick/Core-SNP-filter" +LABEL license="https://github.com/rrwick/Core-SNP-filter/blob/main/LICENSE" +LABEL maintainer="Erin Young" +LABEL maintainer.email="eriny@utah.gov" + +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +WORKDIR /usr/local/bin + +RUN wget -q https://github.com/rrwick/Core-SNP-filter/releases/download/v${CORESNPFILTER_VER}/coresnpfilter-linux-x86_64-musl-v${CORESNPFILTER_VER}.tar.gz && \ + tar -vxf coresnpfilter-linux-x86_64-musl-v${CORESNPFILTER_VER}.tar.gz && \ + rm -rf coresnpfilter-linux-x86_64-musl-v${CORESNPFILTER_VER}.tar.gz + +ENV LC_ALL=C + +CMD [ "coresnpfilter", "--help" ] + +# 'WORKDIR' sets working directory +WORKDIR /data + +##### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ##### +##### Step 2. Set up the testing stage. ##### +##### The docker image is built to the 'test' stage before merging, but ##### +##### the test stage (or any stage after 'app') will be lost. ##### +##### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ##### + +# A second FROM insruction creates a new stage +FROM app as test + +# set working directory so that all test inputs & outputs are kept in /test +WORKDIR /test + +# print help and version info; check dependencies (not all software has these options available) +# Mostly this ensures the tool of choice is in path and is executable +RUN coresnpfilter --help && \ + coresnpfilter --version + +RUN wget -q https://github.com/rrwick/Core-SNP-filter/raw/refs/heads/main/demo.fasta.gz && \ + coresnpfilter -e -c 0.95 demo.fasta.gz > demo_core.fasta && \ + head demo_core.fasta \ No newline at end of file diff --git a/core-snp-filter/0.2.0/README.md b/core-snp-filter/0.2.0/README.md new file mode 100644 index 000000000..69bf30204 --- /dev/null +++ b/core-snp-filter/0.2.0/README.md @@ -0,0 +1,36 @@ +# Core-SNP-filter container + +Main tool: [Core-SNP-filter](https://github.com/rrwick/Core-SNP-filter) + +Code repository: https://github.com/rrwick/Core-SNP-filter + +Basic information on how to use this tool: +- executable: coresnpfilter +- help: -h +- version: -V +- description: | + +> This is a tool to filter sites (i.e. columns) in a FASTA-format whole-genome pseudo-alignment based on: +> - Whether the site contains variation or not. +> - How conserved the site is, i.e. contains an unambiguous base in a sufficient fraction of the sequences. + +Full documentation: https://github.com/rrwick/Core-SNP-filter + +## Example Usage + +```bash +# Exclude invariant sites: +coresnpfilter -e core.full.aln > filtered.aln + +# With a strict core threshold (same as Snippy's core.aln): +coresnpfilter -e -c 1.0 core.full.aln > filtered.aln + +# With a slightly more relaxed core threshold: +coresnpfilter -e -c 0.95 core.full.aln > filtered.aln + +# Use gzipped files to save disk space: +coresnpfilter -e -c 0.95 core.full.aln.gz | gzip > filtered.aln.gz + +# Running without any options will work, but the output will be the same as the input: +coresnpfilter core.full.aln > filtered.aln +```