Skip to content

Commit

Permalink
Merge pull request #424 from pangenome/update_stuff
Browse files Browse the repository at this point in the history
latest vcflib
  • Loading branch information
AndreaGuarracino authored Nov 1, 2024
2 parents 212dbb1 + 7f35ae6 commit 4f1ba17
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 25 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/build_and_test_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ jobs:
run: docker build . --file Dockerfile --target binary --tag pggb
- name: Run a test on the DRB1-3123 dataset (SPOA)
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/HLA/DRB1-3123.fa.gz -p 70 -s 3000 -G 800,900,1100 -n 10 -t 2 -Z -M -m -o drib1_spoa && ls drib1_spoa/* && head drib1_spoa/*.log -n 63"
- name: Run a test on the DRB1-3123 dataset (abPOA)
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/HLA/DRB1-3123.fa.gz -p 70 -s 3000 -G 800,900,1100 -n 10 -t 2 -Z -M -m -b -o drib1_abpoa && ls drib1_abpoa/* && head drib1_abpoa/*.log -n 63"
- name: Run a test on the DRB1-3123 dataset (abPOA global)
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/HLA/DRB1-3123.fa.gz -p 70 -s 3000 -G 800,900,1100 -n 10 -t 2 -Z -M -m --global-poa -b -o drib1_abpoa && ls drib1_abpoa/* && head drib1_abpoa/*.log -n 63"
- name: Run a test on the DRB1-3123 dataset (paf)
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/HLA/DRB1-3123.fa.gz -a data/paf/DRB1-3123.fa.15a1009.wfmash.paf -p 70 -s 3000 -G 2000 -n 10 -t 2 -Z -M -m -o drib1_paf && ls drib1_paf/* && head drib1_paf/*.log -n 63"
- name: Run a test on the LPA dataset (SPOA global)
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/LPA/LPA.fa.gz -p 95 -s 20000 -G 800,900 -k 79 -t 2 -Z -O 0.001 -m -z -o lpa -V 'chm13,chm1:1000' && ls lpa/* && head lpa/*.log -n 63"
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "pggb -i data/LPA/LPA.fa.gz -p 95 -s 20000 -G 800,900 -k 79 -t 2 -Z -O 0.001 -m --global-poa -o lpa -V 'chm13,chm1:1000' && ls lpa/* && head lpa/*.log -n 63"
- name: Run a test for the gfa2evaluation script on a mini HPRC chrMT dataset
run: docker run -v ${PWD}/data/:/data pggb /bin/bash -c "gfa2evaluation.sh data/chrM.pan.4.gfa chm13 data/test_eval 2"
43 changes: 21 additions & 22 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
FROM debian:bullseye-slim AS binary
FROM debian:bookworm-slim AS binary

LABEL authors="Erik Garrison, Simon Heumos, Andrea Guarracino"
LABEL description="Preliminary docker image containing all requirements for pggb pipeline"
LABEL base_image="debian:bullseye-slim"
LABEL base_image="debian:bookworm-slim"
LABEL software="pggb"
LABEL about.home="https://github.com/pangenome/pggb"
LABEL about.license="SPDX:MIT"

# dependencies
RUN apt-get update \
&& apt-get install -y \
&& apt-get install -y --no-install-recommends \
git \
bash \
cmake \
make \
g++-11 \
python3-dev \
python3-pip \
python3-venv \
pybind11-dev \
libbz2-dev \
bc \
Expand All @@ -38,6 +40,8 @@ RUN apt-get update \
libcairo2-dev \
unzip \
parallel \
r-base \
libclang-dev \
&& apt-get clean \
&& apt-get purge \
&& rm -rf /var/lib/apt/lists/*
Expand Down Expand Up @@ -98,8 +102,6 @@ RUN git clone https://github.com/marschall-lab/GFAffix.git \
&& cd ../ \
&& rm -rf GFAffix

RUN pip install multiqc==1.22.2

RUN wget https://github.com/vgteam/vg/releases/download/v1.59.0/vg && chmod +x vg && mv vg /usr/local/bin/vg

RUN git clone https://github.com/pangenome/vcfbub \
Expand All @@ -113,7 +115,7 @@ RUN git clone https://github.com/pangenome/vcfbub \

RUN git clone --recursive https://github.com/vcflib/vcflib.git \
&& cd vcflib \
&& git checkout 404b98a6a0601a8668fb039eae5196fa1ae12525 \
&& git checkout 0272f2d8ebcb70ca9b7f23a0aed3991e0a63ae6b \
&& mkdir -p build \
&& cd build \
&& cmake -DZIG=OFF -DCMAKE_BUILD_TYPE=Debug -DWFA_GITMODULE=ON .. && cmake --build . -- -j $(nproc) \
Expand All @@ -122,10 +124,6 @@ RUN git clone --recursive https://github.com/vcflib/vcflib.git \
&& cd ../ \
&& rm -rf vcflib

# Community detection dependencies
RUN pip install igraph==0.11.5
RUN pip install pycairo==1.26.1

# Additional tools
RUN git clone https://github.com/ekg/fastix.git \
&& cd fastix \
Expand Down Expand Up @@ -162,23 +160,24 @@ RUN wget https://github.com/RealTimeGenomics/rtg-tools/releases/download/3.12.1/
&& unzip rtg-tools-3.12.1-linux-x64.zip && sed -i 's/read -r -p "Would you like to enable automatic usage logging (y\/n)? " REPLY/REPLY="n"/g' /rtg-tools-3.12.1/rtg \
&& ln -s /rtg-tools-3.12.1/rtg /usr/local/bin/ && rtg help

# Install base R
# NOTE: we might have to go the conda way on the long run
# https://www.reddit.com/r/Rlanguage/comments/oi31xn/installing_r41_on_debian_bullseye_testing/
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key B8F25A8A73EACF41 \
&& echo "deb http://cloud.r-project.org/bin/linux/debian bullseye-cran40/" > /etc/apt/sources.list.d/r-packages.list \
&& apt update \
&& apt install -y r-base \
&& apt-get clean \
&& apt-get purge \
&& rm -rf /var/lib/apt/lists/* \
&& wget https://cran.r-project.org/src/contrib/Archive/data.table/data.table_1.15.2.tar.gz \
&& R CMD INSTALL data.table_1.15.2.tar.gz
# Install R package
RUN wget https://cran.r-project.org/src/contrib/Archive/data.table/data.table_1.15.2.tar.gz \
&& R CMD INSTALL data.table_1.15.2.tar.gz \
&& rm data.table_1.15.2.tar.gz

RUN wget https://github.com/arq5x/bedtools2/releases/download/v2.31.0/bedtools.static \
&& mv bedtools.static /usr/local/bin/bedtools \
&& chmod +x /usr/local/bin/bedtools

# Set up Python virtual environment
RUN python3 -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"

# Install Python packages in virtual environment
RUN pip install multiqc==1.22.2 \
&& pip install igraph==0.11.5 \
&& pip install pycairo==1.26.1

# copy required scripts
COPY scripts/* /usr/local/bin/
COPY scripts /usr/local/bin/scripts/
Expand Down

0 comments on commit 4f1ba17

Please sign in to comment.