Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
b154528
Add v2 code
Cecilia-Sensalari Mar 20, 2025
01c67ec
Version lock ubuntu in test_pipeline
Cecilia-Sensalari Mar 20, 2025
e1f3594
Add apt-get update in Dockerfile
Cecilia-Sensalari Mar 20, 2025
6a47cec
Test test_pipeline with latest nextflow version
Cecilia-Sensalari Mar 20, 2025
4b4393c
try out nextflow v23.10.1
Cecilia-Sensalari Mar 20, 2025
e00a0ea
fastcluster updated to 1.1.26
Cecilia-Sensalari Apr 6, 2025
5cbbf39
try python 22.10.4
Cecilia-Sensalari Apr 6, 2025
f48fb42
lock python version and bump ete3 and PyQt5 to latest patch release
Cecilia-Sensalari Apr 6, 2025
689c981
mount &PWD when using docker
Cecilia-Sensalari Apr 6, 2025
2fa167c
do no move nextflow.config
Cecilia-Sensalari Apr 6, 2025
0d412b5
Comment out unused modules
Cecilia-Sensalari Apr 7, 2025
d5bee68
Rm import unused diamond, OrthoFinder modules
Cecilia-Sensalari Apr 7, 2025
d3ced0a
Official paml webiste is down, use alternative link
Cecilia-Sensalari Apr 8, 2025
2918656
Add Zenodo 37spp set; use original paml source
Cecilia-Sensalari May 9, 2025
93d07b9
Use Python 3.9 (instead of 3.8)
Cecilia-Sensalari May 9, 2025
753c14a
Earlier numpy installation step (test)
Cecilia-Sensalari May 9, 2025
f9a2d7f
Attempt fixing numpy error
Cecilia-Sensalari May 9, 2025
307f962
Update Dockerfile
Cecilia-Sensalari May 9, 2025
77fdfd6
Fixes before v2 release (GitHub actions, Dockerfile, fastcluster) (#67)
Cecilia-Sensalari May 20, 2025
d39893c
Add v1.1.5 in installation.rst notes
Cecilia-Sensalari May 20, 2025
a8a6e88
Small edit at usage.rst about number of cores
Cecilia-Sensalari May 20, 2025
8aa6789
Small edit recret docs subtitle and introduction
Cecilia-Sensalari May 20, 2025
fdad128
Improve recret rst documention text
Cecilia-Sensalari May 20, 2025
a415c3f
Add spacing
Cecilia-Sensalari May 20, 2025
ca4249d
Small edit recret rst docs
Cecilia-Sensalari May 20, 2025
74d2aec
Edits recret rst docs
Cecilia-Sensalari May 20, 2025
163fa6d
Rm unnecessary subtitles in recret rst docs
Cecilia-Sensalari May 20, 2025
f886dae
Small edit recret rst docs
Cecilia-Sensalari May 20, 2025
2d6c125
Add link to 37 angiosperm species tar.gz
Cecilia-Sensalari May 20, 2025
71078fb
Fix docs
Cecilia-Sensalari May 20, 2025
19d1cf7
Fix docs
Cecilia-Sensalari May 20, 2025
a629bb3
Small fix docs
Cecilia-Sensalari May 20, 2025
850a78f
Instructions installation to download tar.gz file
Cecilia-Sensalari May 20, 2025
6be37b8
Attempt fix installation rst note layout
Cecilia-Sensalari May 20, 2025
5aa43cb
Installation rst layout fixes
Cecilia-Sensalari May 20, 2025
27d0dd0
Add sphinx_copybutton for docs
Cecilia-Sensalari May 20, 2025
f8d6ebc
Move example configs/seqs into dirs; update docs
Cecilia-Sensalari May 20, 2025
a6a95e0
Add forgotten sequences path in example config
Cecilia-Sensalari May 20, 2025
efd08d2
Leftover config_files path in docs and readme
Cecilia-Sensalari May 20, 2025
0946ed6
Minor adjustment in how to build docs locally
Cecilia-Sensalari May 20, 2025
4ac8cbc
Add test and example to gitignore
Cecilia-Sensalari May 20, 2025
a058ee8
Small fix to comment in conf.py
Cecilia-Sensalari May 20, 2025
07df5d6
Update notes about tar.gz in recret rst docs
Cecilia-Sensalari May 20, 2025
0ee9c91
Add ksrates logos
Cecilia-Sensalari May 20, 2025
45b4039
usage docs (Nextflow DSL2)
Cecilia-Sensalari May 21, 2025
f8332ec
example nextflow config with profiles
Cecilia-Sensalari May 21, 2025
f05422d
Config docs updated config blocks and description
Cecilia-Sensalari May 21, 2025
0666ae3
Update "test your installation" docs
Cecilia-Sensalari May 21, 2025
cb5dc5b
Update Nextflow config template
Cecilia-Sensalari May 21, 2025
3637921
Add time and beforescript Nextflow config
Cecilia-Sensalari May 21, 2025
e90d8a6
Update docs about template Nextflow config
Cecilia-Sensalari May 21, 2025
2ba30b3
Update usage, paralogs_analyses and install docs
Cecilia-Sensalari May 21, 2025
05699f4
Replace singularity with apptainer
Cecilia-Sensalari May 21, 2025
37be17a
add missing --expert configs in apptainer cmds
Cecilia-Sensalari May 21, 2025
28ef586
Small improvement recret dcos
Cecilia-Sensalari May 21, 2025
3d533d6
Fix gitignore granularity
Cecilia-Sensalari May 21, 2025
857a1cb
Small fix docs table
Cecilia-Sensalari May 21, 2025
2bd963d
Minor edits to docs
Cecilia-Sensalari May 21, 2025
5dd267c
Update README docs for v2 release
Cecilia-Sensalari May 21, 2025
9b614d2
Fixes on README docs
Cecilia-Sensalari May 21, 2025
d80f147
Improve README again
Cecilia-Sensalari May 21, 2025
01ac68b
Fix README useful links
Cecilia-Sensalari May 21, 2025
82241b4
Fix README useful link
Cecilia-Sensalari May 21, 2025
173feba
Fixes README
Cecilia-Sensalari May 21, 2025
d9dc0cb
Fix README
Cecilia-Sensalari May 21, 2025
f267643
Fixes readme
Cecilia-Sensalari May 21, 2025
eba82fb
Edits readme
Cecilia-Sensalari May 21, 2025
e38eb10
Small fixes readme
Cecilia-Sensalari May 21, 2025
15d1183
Add transparency to sphinx copy button
Cecilia-Sensalari May 21, 2025
9a4b2a0
Merge branch 'master' of github.com:VIB-PSB/ksrates into v2
Cecilia-Sensalari May 21, 2025
f52e95b
Add artifacts output files
Cecilia-Sensalari May 21, 2025
1858fcc
Add if: ${{ always() }} in artifact code
Cecilia-Sensalari May 21, 2025
7d4b8aa
Bugfix: min_ks_anchors also for recret lmm()
Cecilia-Sensalari May 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 16 additions & 5 deletions .github/workflows/test_pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,30 +15,41 @@ on:
jobs:
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
runs-on: ubuntu-22.04

steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- uses: actions/checkout@v3

# Runs commands using the runners shell
- name: Building dependency Docker container
# Builds here the Docker container
run: docker build . --file Dockerfile --tag ksrates

- name: Set Java 17 Environment
run: |
echo "JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64" >> $GITHUB_ENV
echo "/usr/lib/jvm/java-17-openjdk-amd64/bin" >> $GITHUB_PATH

- name: Installing Nextflow
run: |
sudo apt-get update
sudo apt-get install wget default-jdk
sudo apt-get install wget openjdk-17-jdk
sudo wget -qO- https://get.nextflow.io | bash
sudo mv nextflow /usr/bin

- name: Running ksrates Nextflow pipeline
run: |
cd test
mv nextflow.config custom_nextflow.config
NXF_VER=21.10.6 nextflow run ../main.nf --config config_elaeis.txt -with-docker ksrates
NXF_VER=24.10.5 nextflow run ../main.nf --test -profile docker --config config_files/config_elaeis.txt --expert config_files/config_expert.txt -with-docker ksrates

- name: Visualize output files
if: ${{ always() }}
run: ls -l test/rate_adjustment/elaeis

- uses: actions/upload-artifact@v4
name: Test output files
if: ${{ always() }}
with:
name: ksrates_test_pipeline_output
path: test/rate_adjustment/elaeis/
10 changes: 6 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
__pycache__
.vscode
.nextflow
.nextflow.log*
docs/outdir
test/work
test/.nextflow*
test/ortholog_distributions
test/.nextflow
test/rate_adjustment
test/ortholog_distributions
test/work
example/rate_adjustment
example/ortholog_distributions
example/work
4 changes: 2 additions & 2 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ build:

# Build from the docs/ directory with Sphinx
sphinx:
configuration: doc/source/conf.py
configuration: docs/conf.py

# Explicitly set the version of Python and its requirements
python:
install:
- requirements: doc/source/requirements.txt
- requirements: docs/requirements.txt
65 changes: 48 additions & 17 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,27 +1,58 @@
FROM vibpsb/i-adhore
FROM vibpsb/i-adhore:3.1

MAINTAINER Cecilia Sensalari

ENV LC_ALL=C.UTF-8
ENV LANG=C.UTF-8
ENV DEBIAN_FRONTEND=noninteractive

# Install PAML from source

RUN apt-get install -y wget && wget http://abacus.gene.ucl.ac.uk/software/paml4.9j.tgz && \
tar -xzf paml4.9j.tgz && cd paml4.9j/src && make -f Makefile && mv codeml /bin && cd /

# Install Python3, wgd dependencies...
# Install Python 3.9
RUN apt-get update && \
apt-get install -y software-properties-common && \
add-apt-repository ppa:deadsnakes/ppa && \
apt-get update && \
apt-get install -y python3.9 python3.9-distutils && \
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.9 && \
python3.9 -m pip install --upgrade pip

# Install non-python wgd dependencies
RUN apt-get update && apt-get install -yq \
wget \
git \
curl \
default-jdk \
build-essential \
mcl \
ncbi-blast+ \
muscle \
fasttree

RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -yq install python3-pip python3-tk git curl \
default-jdk build-essential mcl ncbi-blast+ muscle mafft prank fasttree phyml

ADD /requirements.txt /install/requirements.txt
ADD /setup.py /install/setup.py
ADD /ksrates /install/ksrates
ADD /wgd_ksrates /install/wgd_ksrates
ADD /README.md /install/README.md
ADD /ksrates_cli.py /install/ksrates_cli.py
# Install PAML from source
RUN wget http://abacus.gene.ucl.ac.uk/software/paml4.9j.tgz && \
tar -xzf paml4.9j.tgz && cd paml4.9j/src && make -f Makefile && \
mv codeml /bin && cd /

# Install DIAMOND
RUN wget http://github.com/bbuchfink/diamond/releases/download/v2.1.9/diamond-linux64.tar.gz && \
tar -xzf diamond-linux64.tar.gz && mv diamond /bin

# Install OrthoMCLight
RUN wget https://raw.githubusercontent.com/VIB-PSB/OrthoMCLight/main/orthomclight.pl -P /bin && \
wget https://raw.githubusercontent.com/VIB-PSB/OrthoMCLight/main/orthomclight_module.pm -P /bin && \
chmod a+rx /usr/bin/orthomclight*

# Download the 37 angiosperm sequence zipped file from Zenodo for the reciprocal retention pipeline
RUN wget https://zenodo.org/records/15225340/files/original_angiosperm_sequences.tar.gz -P /ksrates/reciprocal_retention

# Copy ksrates files
ADD /requirements.txt /ksrates/requirements.txt
ADD /setup.py /ksrates/setup.py
ADD /ksrates /ksrates/ksrates
ADD /wgd_ksrates /ksrates/wgd_ksrates
ADD /README.md /ksrates/README.md
ADD /ksrates_cli.py /ksrates/ksrates_cli.py

# Install ksrates and requirements from requirements.txt
RUN python3 -m pip install /install
RUN python3.9 -m pip install -r /ksrates/requirements.txt && \
python3.9 -m pip install /ksrates && \
rm -r /ksrates
Loading