Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 8 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
## LOGAN development version

- Removed old bindpaths and fixed ` /gs10 doesn't exist` error (#107, @samarth8392)
- Increased pipeline walltime for slurm submission to 100 hours (#107, @samarth8392)
- Minor documentation updates for setup and running LOGAN (#107, @samarth8392)

## LOGAN 0.3.2

- Uses Nextflow v25 for logan run; fixes the bug in stub run in nf v24.10 (see: https://github.com/nextflow-io/nextflow/issues/5456) (#99, @samarth8392)
-

## LOGAN 0.3.1

- Improve help message for `logan run`. (#97, @kelly-sovacool)
Expand Down
98 changes: 74 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,24 @@ Original pipelining and code forked from the CCBR Exome-seek Pipeline [Exome-see

**Requires:** `singularity>=3.5` `nextflow>=22.10.2`

[singularity](https://singularity.lbl.gov/all-releases) must be installed on the target system. Snakemake orchestrates the execution of each step in the pipeline. To guarantee the highest level of reproducibility, each step relies on versioned images from [DockerHub](https://hub.docker.com/orgs/nciccbr/repositories). Nextflow uses singularity to pull these images onto the local filesystem prior to job execution, and as so, nextflow and singularity are the only two dependencies.
[singularity](https://singularity.lbl.gov/all-releases) must be installed on the target system. Nextflow orchestrates the execution of each step in the pipeline. To guarantee the highest level of reproducibility, each step relies on versioned images from [DockerHub](https://hub.docker.com/orgs/nciccbr/repositories). Nextflow uses singularity to pull these images onto the local filesystem prior to job execution, and as so, nextflow and singularity are the only two dependencies.

## Setup
## Set up

LOGAN can be used with the Nextflow pipelining software in
Please clone this repository to your local filesystem using the following command on Biowulf:
LOGAN is installed on the [Biowulf HPC](#biowulf).
For installation in other execution environments, refer to the [docs](https://ccbr.github.io/LOGAN/).

```bash
### Biowulf

LOGAN is available on [Biowulf](https://hpc.nih.gov/) in the `ccbrpipeliner` module.
You'll first need to start an interactive session, then load the module:

```sh
# start an interactive node
sinteractive --mem=2g --cpus-per-task=2 --gres=lscratch:200

git clone https://github.com/CCBR/LOGAN
module load nextflow
##Example run
nextflow run LOGAN/main.nf -profile ci_stub -preview
# load the ccbrpipeliner module
module load ccbrpipeliner
```

## Usage
Expand All @@ -65,17 +68,19 @@ LOGAN supports inputs of either
Example

```bash
c130863309_TUMOR /data/nousomedr/c130863309_TUMOR.R1_001.fastq.gz /data/nousomedr/c130863309_TUMOR.R2_001.fastq.gz
c130889189_PBMC /data/nousomedr/c130889189_PBMC.R1_001.fastq.gz /data/nousomedr/c130889189_PBMC.R2_001.fastq.gz
Sample1_TUMOR /path/to/the/fastq/folder/Sample1_TUMOR.R1.fq.gz /path/to/the/fastq/folder/Sample1_TUMOR.R2.fq.gz
Sample1_NORMAL /path/to/the/fastq/folder/Sample1_NORMAL.R1.fq.gz /path/to/the/fastq/folder/Sample1_NORMAL.R2.fq.gz
Sample2_TUMOR /path/to/the/fastq/folder/Sample2_TUMOR.R1.fq.gz /path/to/the/fastq/folder/Sample2_TUMOR.R2.fq.gz
Sample2_NORMAL /path/to/the/fastq/folder/Sample2_NORMAL.R1.fq.gz /path/to/the/fastq/folder/Sample2_NORMAL.R2.fq.gz
```

`--bam_file_input` - A headerless tab delimited sheet that has the sample name, bam, and bam index (bai) file locations

Example

```bash
c130863309_TUMOR /data/nousomedr/c130863309_TUMOR.bam /data/nousomedr/c130863309_TUMOR.bam.bai
c130889189_PBMC /data/nousomedr/c130889189_PBMC.bam /data/nousomedr/c130889189_PBMC.bam.bai
Sample1_TUMOR /path/to/the/BAM/folder/Sample1_TUMOR.bam /path/to/the/BAM/folder/Sample1_TUMOR.bam.bai
Sample1_NORMAL /path/to/the/BAM/folder/Sample1_NORMAL.bam /path/to/the/BAM/folder/Sample1_NORMAL.bam.bai
```

### Genome
Expand Down Expand Up @@ -104,8 +109,8 @@ Example

```bash
Tumor Normal
c130863309_TUMOR c130863309_PBMC
c130889189_TUMOR c130889189_PBMC
Sample1_TUMOR Sample1_Normal
Sample2_TUMOR Sample1_Normal
```

#### 2. Tumor only mode
Expand Down Expand Up @@ -146,23 +151,68 @@ Example: `--svcallers gridss`
Example of Tumor_Normal calling mode

```bash
# preview the logan jobs that will run
nextflow run LOGAN/main.nf --mode local -profile ci_stub --genome hg38 --sample_sheet samplesheet.tsv --outdir out --fastq_input "*R{1,2}.fastq.gz" -preview --vc --sv --cnv
# run a stub/dryrun of the logan jobs
nextflow run LOGAN/main.nf --mode local -profile ci_stub --genome hg38 --sample_sheet samplesheet.tsv --outdir out --fastq_input "*R{1,2}.fastq.gz" -stub --vc --sv --cnv
# launch a logan run on slurm with the test dataset
nextflow run LOGAN/main.nf --mode slurm -profile biowulf,slurm --genome hg38 --sample_sheet samplesheet.tsv --outdir out --fastq_input "*R{1,2}.fastq.gz" --vc --sv --cnv
# Step 0: Set up

sinteractive --mem=8g -N 1 -n 4
module load ccbrpipeliner # v8

# set up directories

DATADIR="/path/to/fastq/folder"

# Step1: Initilalization

logan init \
--output logan_output

# Step2: stub-run

logan run \
--output logan_output \
--mode local -profile ci_stub \
--genome hg38 \
--sample_sheet samplesheet.txt \
--fastq_file_input logan_fastq_input.txt \
-stub --vc --sv --cnv

# Step3: Full run
logan run \
--output logan_output \
--mode slurm -profile slurm \
--genome hg38 \
--sample_sheet samplesheet.txt \
--fastq_file_input logan_fastq_input.txt \
--vc --sv --cnv

# NOTE: In case of globbing instead of using a fastq input sheet

logan run \
--output logan_output \
--mode local -profile ci_stub \
--genome hg38 \
--sample_sheet samplesheet.txt \
--fastq_input "/path/to/fastq/folder/*R{1,2}.fastq.gz" \
-stub --vc --sv --cnv

logan run \
--output logan_output \
--mode slurm -profile slurm \
--genome hg38 \
--sample_sheet samplesheet.txt \
--fastq_input "/path/to/fastq/folder/*R{1,2}.fastq.gz" \
--vc --sv --cnv

```

Example of Tumor only calling mode

```bash
# preview the logan jobs that will run
nextflow run LOGAN/main.nf --mode local -profile ci_stub --genome hg38 --outdir out --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 -preview --vc --sv --cnv
logan run --mode local -profile ci_stub --genome hg38 --outdir logan_output --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 -preview --vc --sv --cnv
# run a stub/dryrun of the logan jobs
nextflow run LOGAN/main.nf --mode local -profile ci_stub --genome hg38 --outdir out --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 -stub --vc --sv --cnv
logan run --mode local -profile ci_stub --genome hg38 --outdir logan_output --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 -stub --vc --sv --cnv
# launch a logan run on slurm with the test dataset
nextflow run LOGAN/main.nf --mode slurm -profile biowulf,slurm --genome hg38 --outdir out --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 --vc --sv --cnv
logan run --mode slurm -profile slurm --genome hg38 --outdir logan_output --fastq_input "*R{1,2}.fastq.gz" --callers octopus,mutect2 --vc --sv --cnv
```

### Pipeline Tools and Overview
Expand Down
2 changes: 1 addition & 1 deletion assets/slurm_header_biowulf.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
#SBATCH --cpus-per-task=1
#SBATCH --mem=1g
#SBATCH --time=1-00:00:00
#SBATCH --time=100:00:00
#SBATCH --parsable
#SBATCH -J "LOGAN"
#SBATCH --mail-type=BEGIN,END,FAIL
Expand Down
2 changes: 1 addition & 1 deletion assets/slurm_header_frce.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
#SBATCH --cpus-per-task=1
#SBATCH --mem=1g
#SBATCH --time=1-00:00:00
#SBATCH --time=100:00:00
#SBATCH --parsable
#SBATCH -J "LOGAN"
#SBATCH --mail-type=BEGIN,END,FAIL
Expand Down
1 change: 0 additions & 1 deletion conf/biowulf.config
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ singularity {
autoMounts = true
cacheDir = "/data/CCBR_Pipeliner/SIFS"
envWhitelist = 'https_proxy,http_proxy,ftp_proxy,DISPLAY,SLURM_JOBID,SINGULARITY_BINDPATH'
runOptions = '-B /gs10,/gs11,/gs12,/spin1,/data/CCBR_Pipeliner/,/vf/users,/gpfs,/fdb'
}

env.SINGULARITY_CACHEDIR = "/data/CCBR_Pipeliner/SIFS"
Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# **_LOGAN-whoLe genOme-sequencinG Analysis pipeliNe_**. Call germline and somatic variants, CNVs, and SVs and annotate variants!
--8<-- "README.md"

Empty file modified main.nf
100644 → 100755
Empty file.