diff --git a/README.md b/README.md index b3bbe82..d7036b7 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,8 @@ The final output from this pipeline includes Lima output files, demultiplexed BA ## Dependencies -This pipeline requires installation of [Nextflow](https://www.nextflow.io/docs/latest/install.html) and a containerization platform such as [Docker](https://docs.docker.com/engine/install/). +This pipeline requires installation of [Nextflow](https://www.nextflow.io/docs/latest/install.html). +It also requires installation of either a containerization platform such as [Docker](https://docs.docker.com/engine/install/) or a package manager such as [conda/mamba](https://mamba.readthedocs.io/en/latest/installation/mamba-installation.html). ## Docker Containers @@ -35,6 +36,10 @@ All docker containers used in this pipeline are publicly available. - *fastqc*: quay.io/biocontainers/fastqc:0.12.1--hdfd78af_0 - *multiqc*: quay.io/biocontainers/multiqc:1.21--pyhdfd78af_0 +## Conda Environment + +The conda environment is defined in `environment-pipeline.yml` and will be built automatically if the pipeline is run with `-profile conda`. + # How to run the pipeline: ## Required Parameters @@ -69,6 +74,7 @@ Several profiles are available and can be selected with the `-profile` option at - `apptainer` - `aws` +- `conda` - `docker` - `singularity` @@ -86,6 +92,8 @@ nextflow run \ # Running Test Data +## With Docker + The pipeline can be run using included test data with: ```bash @@ -100,6 +108,20 @@ nextflow run \ -resume ``` +## With Conda + +```bash +nextflow run \ + -profile conda \ + main.nf \ + -c nextflow.config \ + --pool_sheet "${PWD}/tests/pool_sheet.csv" \ + --output "${PWD}/test_output" \ + -with-report \ + -with-trace \ + -resume +``` + ## Expected Outputs ```console diff --git a/environment-dev.yml b/environment-dev.yml index 1b0d9a9..0272c1a 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -2,7 +2,6 @@ name: longplex-nf-dev channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::nextflow=23.10.1 - conda-forge::python=3.11.0 diff --git a/environment-pipeline.yml b/environment-pipeline.yml new file mode 100644 index 0000000..2c55fc3 --- /dev/null +++ b/environment-pipeline.yml @@ -0,0 +1,21 @@ +name: longplex-nf +channels: + - conda-forge + - bioconda +dependencies: + - bioconda::fastqc=0.12.1 + - bioconda::lima=2.7.1 + - bioconda::multiqc=1.21 + - bioconda::picard=3.2.0 + - bioconda::samtools=1.19.2 + - conda-forge::python=3.11.0 + - conda-forge::pip=22.3.1 + - conda-forge::r-base=4.3.3 + - conda-forge::r-dplyr=1.1.4 + - conda-forge::r-purrr=1.0.2 + - conda-forge::r-readr=2.1.5 + - conda-forge::r-stringr=1.5.1 + - conda-forge::r-tidyr=1.3.1 + + - pip: + - git+https://github.com/seqwell/longplexpy@0.1.0 diff --git a/nextflow.config b/nextflow.config index ce4af8e..911ddce 100644 --- a/nextflow.config +++ b/nextflow.config @@ -130,6 +130,11 @@ profiles { docker.enabled = true } + conda { + conda.enabled = true + process.conda = 'environment-pipeline.yml' + } + singularity { singularity.enabled = true }