From 4855498eb45144bb7a5ae91198c1db029128c86c Mon Sep 17 00:00:00 2001 From: Erin Young Date: Fri, 1 Sep 2023 13:32:06 -0600 Subject: [PATCH 1/2] adding longshot version 0.4.5 --- Program_Licenses.md | 1 + README.md | 1 + longshot/0.4.5/Dockerfile | 78 +++++++++++++++++++++++++++++++++++++++ longshot/0.4.5/README.md | 13 +++++++ 4 files changed, 93 insertions(+) create mode 100644 longshot/0.4.5/Dockerfile create mode 100644 longshot/0.4.5/README.md diff --git a/Program_Licenses.md b/Program_Licenses.md index a8c6d80db..23253eca1 100644 --- a/Program_Licenses.md +++ b/Program_Licenses.md @@ -63,6 +63,7 @@ The licenses of the open-source software that is contained in these Docker image | kSNP4 | BSD | available in zipped kSNP archive on sourceforge or in docker image under `/opt/kSNP4 Linux package/Documentation/THE BSD OPENSOURCE LICENSE.pdf` | | legsta | GNU GPLv3 | https://github.com/tseemann/legsta/blob/master/LICENSE | | liftoff | GNU GPLv3 | https://github.com/agshumate/Liftoff/blob/master/LICENSE.md | +| longshot | MIT | https://github.com/pjedge/longshot/blob/master/LICENSE | | Lyve-SET | MIT | https://github.com/lskatz/lyve-SET/blob/master/LICENSE | | Mafft | BSD | https://mafft.cbrc.jp/alignment/software/license.txt | | Mash | non-standard license (see link) | https://github.com/marbl/Mash/blob/master/LICENSE.txt | diff --git a/README.md b/README.md index 4ec3c7c4d..e757b6c99 100644 --- a/README.md +++ b/README.md @@ -94,6 +94,7 @@ To learn more about the docker pull rate limits and the open source software pro | [kSNP4](https://hub.docker.com/r/staphb/ksnp4/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/ksnp4)](https://hub.docker.com/r/staphb/ksnp4)| | https://sourceforge.net/projects/ksnp/ | | [legsta](https://hub.docker.com/r/staphb/legsta/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/legsta)](https://hub.docker.com/r/staphb/legsta)| | https://github.com/tseemann/legsta | | [liftoff](https://hub.docker.com/r/staphb/liftoff/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/liftoff)](https://hub.docker.com/r/staphb/liftoff)| | https://github.com/agshumate/Liftoff | +| [longshot](https://hub.docker.com/r/staphb/longshot/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/longshot)](https://hub.docker.com/r/staphb/longshot)| | https://github.com/pjedge/longshot | | [Lyve-SET (includes CG-Pipeline scripts and raxml)](https://hub.docker.com/r/staphb/lyveset/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/lyveset)](https://hub.docker.com/r/staphb/lyveset) | | https://github.com/lskatz/lyve-SET https://github.com/lskatz/CG-Pipeline | | [MAFFT](https://hub.docker.com/r/staphb/mafft/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/mafft)](https://hub.docker.com/r/staphb/mafft) | | https://mafft.cbrc.jp/alignment/software/ | | [Mash](https://hub.docker.com/r/staphb/mash/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/mash)](https://hub.docker.com/r/staphb/mash) | | https://github.com/marbl/Mash | diff --git a/longshot/0.4.5/Dockerfile b/longshot/0.4.5/Dockerfile new file mode 100644 index 000000000..563a168a7 --- /dev/null +++ b/longshot/0.4.5/Dockerfile @@ -0,0 +1,78 @@ +FROM mambaorg/micromamba:1.4.9 as app + +# List all software versions are ARGs near the top of the dockerfile +# 'ARG' sets environment variables during the build stage +# 'ARG' variables are ONLY available during image build, they do not persist in the final image +ARG LONGSHOT_VERSION="0.4.5" + +# build and run as root users since micromamba image has 'mambauser' set as the $USER +USER root +# set workdir to default for building; set to /data at the end +WORKDIR / + +# 'LABEL' instructions tag the image with metadata that might be important to the user +LABEL base.image="mambaorg/micromamba:1.4.9" +LABEL dockerfile.version="1" +LABEL software="longshot" +LABEL software.version="${LONGSHOT_VERSION}" +LABEL description="A variant calling tool for noisy reads" +LABEL website="https://github.com/pjedge/longshot" +LABEL license="https://github.com/pjedge/longshot/blob/master/LICENSE" +LABEL maintainer="Erin Young" +LABEL maintainer.email="eriny@utah.gov" + +# Example apt-get command for commonly-missing dependencies +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 your desired software into the base conda/micromamba environment, pinning the version +# clean up conda garbage +# make /data to use as a working directory +RUN micromamba install --name base -c conda-forge -c bioconda -c defaults longshot=${LONGSHOT_VERSION} && \ + micromamba clean -a -y && \ + mkdir /data + +# 'ENV' instructions set environment variables that persist from the build into the resulting image +# set the environment, add base conda/micromamba bin directory into path +# set locale settings to UTF-8 +ENV PATH="/opt/conda/bin/:${PATH}" \ + LC_ALL=C.UTF-8 + +# 'CMD' instructions set a default command when the container is run. This is typically 'tool --help.' +CMD longshot --help + +# set final working directory to /data +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 +# new base for testing +FROM app as test + +# so that conda/micromamba env is active when running below commands +ENV ENV_NAME="base" +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +# 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 longshot --help && \ + longshot --version + +RUN wget -q https://raw.githubusercontent.com/pjedge/longshot/master/example_data/genome.fa && \ + wget -q https://raw.githubusercontent.com/pjedge/longshot/master/example_data/genome.fa.fai && \ + wget -q https://raw.githubusercontent.com/pjedge/longshot/master/example_data/ground_truth_variants.vcf && \ + wget -q https://raw.githubusercontent.com/pjedge/longshot/master/example_data/pacbio_reads_30x.bam && \ + wget -q https://raw.githubusercontent.com/pjedge/longshot/master/example_data/pacbio_reads_30x.bam.bai && \ + longshot --bam pacbio_reads_30x.bam --ref genome.fa --out longshot_output.vcf && \ + head *vcf \ No newline at end of file diff --git a/longshot/0.4.5/README.md b/longshot/0.4.5/README.md new file mode 100644 index 000000000..1ba1d318d --- /dev/null +++ b/longshot/0.4.5/README.md @@ -0,0 +1,13 @@ +# longshot container + +Main tool : [longshot](https://github.com/pjedge/longshot) + +Full documentation: [https://github.com/artic-network/fieldbioinformatics](https://github.com/artic-network/fieldbioinformatics) + +> Longshot is a variant calling tool for diploid genomes using long error prone reads such as Pacific Biosciences (PacBio) SMRT and Oxford Nanopore Technologies (ONT). It takes as input an aligned BAM/CRAM file and outputs a phased VCF file with variants and haplotype information. It can also genotype and phase input VCF files. It can output haplotype-separated BAM files that can be used for downstream analysis. Currently, it only calls single nucleotide variants (SNVs), but it can genotype indels if they are given in an input VCF. + +## Example Usage + +```bash +longshot --bam example_data/pacbio_reads_30x.bam --ref example_data/genome.fa --out example_data/longshot_output.vcf +``` From a47fdbc9476443f2518bc606988482ce252b90f0 Mon Sep 17 00:00:00 2001 From: Kutluhan Incekara <46578029+Kincekara@users.noreply.github.com> Date: Thu, 2 Nov 2023 08:40:26 -0400 Subject: [PATCH 2/2] Update README.md Modified read me to comply with new templates. --- longshot/0.4.5/README.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/longshot/0.4.5/README.md b/longshot/0.4.5/README.md index 1ba1d318d..b3a7626c8 100644 --- a/longshot/0.4.5/README.md +++ b/longshot/0.4.5/README.md @@ -2,9 +2,19 @@ Main tool : [longshot](https://github.com/pjedge/longshot) -Full documentation: [https://github.com/artic-network/fieldbioinformatics](https://github.com/artic-network/fieldbioinformatics) +Code repository: https://github.com/pjedge/longshot + +Basic information on how to use this tool: +- executable: longshot +- help: <--help> +- version: <--version> +- description: Longshot is a variant calling tool for diploid genomes using long error-prone reads such as Pacific Biosciences (PacBio) SMRT and Oxford Nanopore Technologies (ONT). + +Additional information: -> Longshot is a variant calling tool for diploid genomes using long error prone reads such as Pacific Biosciences (PacBio) SMRT and Oxford Nanopore Technologies (ONT). It takes as input an aligned BAM/CRAM file and outputs a phased VCF file with variants and haplotype information. It can also genotype and phase input VCF files. It can output haplotype-separated BAM files that can be used for downstream analysis. Currently, it only calls single nucleotide variants (SNVs), but it can genotype indels if they are given in an input VCF. +Longshot takes as input an aligned BAM/CRAM file and outputs a phased VCF file with variants and haplotype information. It can also genotype and phase input VCF files. It can output haplotype-separated BAM files that can be used for downstream analysis. Currently, it only calls single nucleotide variants (SNVs), but it can genotype indels if they are given in an input VCF. + +Full documentation: [https://github.com/artic-network/fieldbioinformatics](https://github.com/artic-network/fieldbioinformatics) ## Example Usage