Skip to content

Commit f2b61d6

Browse files
committed
new vcf mix to deal with minos style
1 parent 690a443 commit f2b61d6

File tree

4 files changed

+161
-3
lines changed

4 files changed

+161
-3
lines changed

bin/run-vcfmix.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ def go(vcf_file):
1212
v = lineageScan()
1313

1414
# assuming postfix of ".minos.vcf"
15-
sampleid = vcf_file.replace(".minos.vcf", "")
15+
sampleid = vcf_file.replace("_allelic_depth.minos.vcf", "")
1616
print(sampleid)
1717

1818
res = v.parse(vcffile=vcf_file, sample_id=sampleid)

config/containers.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ process {
3333
}
3434

3535
withLabel:clockwork {
36-
container = "quay.io/pathogen-genomics-cymru/clockwork:0.9.9"
36+
container = "quay.io/pathogen-genomics-cymru/clockwork:0.9.9r1"
3737
}
3838

3939
withLabel:vcfpredict {
40-
container = "quay.io/pathogen-genomics-cymru/vcfpredict:0.9.9"
40+
container = "quay.io/pathogen-genomics-cymru/vcfpredict:0.9.9r1"
4141
}
4242
}

docker/Dockerfile.clockwork-0.9.9r1

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
FROM ubuntu:focal
2+
3+
4+
LABEL maintainer="[email protected]" \
5+
about.summary="container for the clockwork workflow"
6+
7+
ENV samtools_version=1.12 \
8+
htslib_version=1.12 \
9+
bcftools_version=1.12 \
10+
minimap2_version=2.17 \
11+
picard_version=2.18.16 \
12+
gramtools_version=8af53f6c8c0d72ef95223e89ab82119b717044f2 \
13+
vt_version=2187ff6347086e38f71bd9f8ca622cd7dcfbb40c \
14+
minos_version=0.11.0 \
15+
cortex_version=3a235272e4e0121be64527f01e73f9e066d378d3 \
16+
vcftools_version=0.1.15 \
17+
mccortex_version=97aba198d632ee98ac1aa496db33d1a7a8cb7e51 \
18+
stampy_version=1.0.32r3761 \
19+
python_version=3.6.5 \
20+
clockwork_version=2364dec4cbf25c844575e19e8fe0a319d10721b5 \
21+
gatk_version=4.6.0.0
22+
23+
ENV PACKAGES="procps curl git build-essential wget zlib1g-dev pkg-config jq r-base-core rsync autoconf libncurses-dev libbz2-dev liblzma-dev libcurl4-openssl-dev cmake tabix libvcflib-tools libssl-dev software-properties-common perl locales locales-all" \
24+
PYTHON="python2.7 python-dev"
25+
26+
COPY bin/ /opt/bin/
27+
ENV PATH=/opt/bin:$PATH
28+
29+
RUN apt-get update \
30+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y $PACKAGES $PYTHON \
31+
&& curl -fsSL https://www.python.org/ftp/python/${python_version}/Python-${python_version}.tgz | tar -xz \
32+
&& cd Python-${python_version} \
33+
&& ./configure --enable-optimizations \
34+
&& make altinstall \
35+
&& cd .. \
36+
&& ln -s /usr/local/bin/python3.6 /usr/local/bin/python3 \
37+
&& ln -s /usr/local/bin/pip3.6 /usr/local/bin/pip3 \
38+
&& pip3 install --upgrade pip \
39+
&& pip3 install 'cluster_vcf_records==0.13.1' pysam setuptools awscli \
40+
&& apt-get update
41+
42+
#update jdk
43+
RUN wget https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_linux-x64_bin.tar.gz
44+
RUN tar -xvf openjdk-18_linux-x64_bin.tar.gz
45+
RUN mv jdk-18* /opt/
46+
ENV JAVA_HOME=/opt/jdk-18
47+
ENV PATH=$PATH:$JAVA_HOME/bin
48+
49+
50+
RUN curl -fsSL https://github.com/samtools/samtools/archive/${samtools_version}.tar.gz | tar -xz \
51+
&& curl -fsSL https://github.com/samtools/htslib/releases/download/${htslib_version}/htslib-${htslib_version}.tar.bz2 | tar -xj \
52+
&& make -C samtools-${samtools_version} -j HTSDIR=../htslib-${htslib_version} \
53+
&& make -C samtools-${samtools_version} -j HTSDIR=../htslib-${htslib_version} prefix=/usr/local install \
54+
&& rm -r samtools-${samtools_version} \
55+
&& curl -fsSL https://github.com/samtools/bcftools/archive/refs/tags/${bcftools_version}.tar.gz | tar -xz \
56+
&& make -C bcftools-${bcftools_version} -j HTSDIR=../htslib-${htslib_version} \
57+
&& make -C bcftools-${bcftools_version} -j HTSDIR=../htslib-${htslib_version} prefix=/usr/local install \
58+
&& rm -r bcftools-${bcftools_version}
59+
60+
61+
RUN curl -fsSL minimap2-${minimap2_version}.tar.gz https://github.com/lh3/minimap2/archive/v${minimap2_version}.tar.gz | tar -xz \
62+
&& cd minimap2-${minimap2_version} \
63+
&& make \
64+
&& chmod +x minimap2 \
65+
&& mv minimap2 /usr/local/bin \
66+
&& cd .. \
67+
&& rm -r minimap2-${minimap2_version} \
68+
&& wget https://github.com/broadinstitute/picard/releases/download/${picard_version}/picard.jar -O /usr/local/bin/picard.jar
69+
70+
71+
RUN git clone https://github.com/atks/vt.git vt-git \
72+
&& cd vt-git \
73+
&& git checkout ${vt_version} \
74+
&& make \
75+
&& cd .. \
76+
&& mv vt-git/vt /usr/local/bin \
77+
&& pip3 install tox "six>=1.14.0" \
78+
&& git clone https://github.com/iqbal-lab-org/gramtools \
79+
&& cd gramtools \
80+
&& git checkout ${gramtools_version} \
81+
&& pip3 install . \
82+
&& cd .. \
83+
&& pip3 install cython \
84+
&& pip3 install git+https://github.com/iqbal-lab-org/minos@v${minos_version}
85+
86+
87+
RUN git clone --recursive https://github.com/iqbal-lab/cortex.git \
88+
&& cd cortex \
89+
&& git checkout ${cortex_version} \
90+
&& bash install.sh \
91+
&& make NUM_COLS=1 cortex_var \
92+
&& make NUM_COLS=2 cortex_var \
93+
&& cd .. \
94+
&& mkdir bioinf-tools \
95+
&& cd bioinf-tools \
96+
&& curl -fsSL http://www.well.ox.ac.uk/~gerton/software/Stampy/stampy-${stampy_version}.tgz | tar -xz \
97+
&& make -C stampy-* \
98+
&& cp -s stampy-*/stampy.py . \
99+
&& curl -fsSL https://github.com/vcftools/vcftools/releases/download/v${vcftools_version}/vcftools-${vcftools_version}.tar.gz | tar -xz \
100+
&& cd vcftools-${vcftools_version} \
101+
&& ./configure --prefix $PWD/install \
102+
&& make && make install \
103+
&& ln -s src/perl/ . \
104+
&& cd .. \
105+
&& git clone --recursive https://github.com/mcveanlab/mccortex \
106+
&& cd mccortex \
107+
&& git checkout ${mccortex_version} \
108+
&& make all \
109+
&& cd .. \
110+
&& cp -s mccortex/bin/mccortex31 . \
111+
&& cd .. \
112+
&& git clone https://github.com/iqbal-lab-org/clockwork \
113+
&& cd clockwork \
114+
&& git checkout ${clockwork_version} \
115+
&& cd python \
116+
&& pip3 install . \
117+
&& chmod +x scripts/clockwork
118+
119+
RUN wget https://github.com/broadinstitute/gatk/releases/download/${gatk_version}/gatk-${gatk_version}.zip -O /tmp/gatk-${gatk_version}.zip\
120+
&& unzip /tmp/gatk-${gatk_version}.zip -d /opt/ \
121+
&& rm /tmp/gatk-${gatk_version}.zip -f
122+
123+
ENV CLOCKWORK_CORTEX_DIR=/cortex \
124+
PATH=${PATH}:/clockwork/python/scripts:/opt/gatk-${gatk_version} \
125+
PICARD_JAR=/usr/local/bin/picard.jar
126+
127+
ENV LC_ALL en_US.UTF-8 \
128+
LANG en_US.UTF-8 \
129+
LANGUAGE en_US.UTF-8
130+
131+

docker/Dockerfile.vcfpredict-0.9.9r1

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
FROM ubuntu:20.04
2+
3+
LABEL maintainer="[email protected]" \
4+
about.summary="container for the vcf predict workflow"
5+
6+
#add run-vcf to container
7+
COPY bin/ /opt/bin/
8+
ENV PATH=/opt/bin:$PATH
9+
10+
ENV PACKAGES="procps curl wget git build-essential libhdf5-dev libffi-dev r-base-core jq" \
11+
PYTHON="python3 python3-pip python3-dev"
12+
13+
ENV vcfmix_version=d4693344bf612780723e39ce27c8ae3868f95417
14+
15+
#apt updates
16+
RUN apt-get update \
17+
&& DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata \
18+
&& apt-get install -y $PACKAGES $PYTHON \
19+
&& apt-get install -y python3-packaging \
20+
&& git clone https://github.com/whalleyt/VCFMIX.git \
21+
&& cd VCFMIX \
22+
&& git checkout ${vcfmix_version} \
23+
&& pip3 install recursive_diff \
24+
&& pip3 install awscli \
25+
&& pip3 install . \
26+
&& cp -r data /usr/local/lib/python3.8/dist-packages \
27+
&& cd ..

0 commit comments

Comments
 (0)