nextflow pipeline
This repository is a template and a library repository to help you build nextflow pipeline. You can fork this repository to build your own pipeline. To get the last commits from this repository into your fork use the following commands:
git remote add upstream gitlab_lbmc:pipelines/nextflow.git
git pull upstream master
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
To run nextflow on you computer you need to have java (>= 1.8) installed.
java --version
To be able to easily test tools already implemented for nextflow on your computer (src/nf_modules/
to see their list). You need to have docker installed.
docker run hello-world
Installing
To install nextflow on you computer simply run the following command:
src/install_nextflow.sh
Then to initialize a given tools run the following command:
src/docker_modules/<tool_name>/<tool_version>/docker_init.sh
For example to initialize file_handle
version 0.1.1
, run:
src/docker_modules/file_handle/0.1.1/docker_init.sh
To initialize all the tools:
find src/docker_modules/ -name "docker_init.sh" | awk '{system($0)}'
Running the tests
To run tests we first need to get a training set
cd data
git clone -c http.sslVerify=false https://gitlab.biologie.ens-lyon.fr/LBMC/tiny_dataset.git
cp tiny_dataset/fastq/tiny_R1.fastq tiny_dataset/fastq/tiny2_R1.fastq
cp tiny_dataset/fastq/tiny_R2.fastq tiny_dataset/fastq/tiny2_R2.fastq
cp tiny_dataset/fastq/tiny_S.fastq tiny_dataset/fastq/tiny2_S.fastq
cd ..
Then to run the tests for a given tools run the following command:
src/nf_modules/<tool_name>/<tool_version>/tests.sh
For example to run the tests on Bowtie2
run:
src/nf_modules/Bowtie2/tests.sh
Available tools
tool | nf module | docker module | sge module |
---|---|---|---|
BEDtools | ok | ok | ok |
Bowtie | ok | ok | no |
Bowtie2 | ok | ok | ok |
canu | ok | ok | ok |
cutadapt | ok | ok | ok |
deepTools | no | ok | ok |
FastQC | ok | ok | ok |
file_handle | no | ok | ok |
HISAT2 | no | ok | no |
HTSeq | ok | ok | ok |
Kallisto | ok | ok | ok |
MACS2 | no | ok | ok |
MultiQC | ok | ok | ok |
MUSIC | ok | ok | ok |
picard | no | ok | ok |
pigz | no | ok | ok |
RSEM | ok | ok | ok |
SAMtools | ok | ok | ok |
SRAtoolkit | ok | ok | ok |
Salmon | no | ok | ok |
TopHat | no | ok | ok |
Trimmomatic | no | ok | ok |
UrQt | ok | ok | ok |
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Laurent Modolo - Initial work
See also the list of contributors who participated in this project.
License
This project is licensed under the CeCiLL License- see the LICENSE file for details