John
John

Reputation: 161

getting weird error while running a nextflow pipeline

For my data analysis pipeline I am using nextflow as the workflow management system to run a tool called rmats. In the script section I gave all the required arguments but when I run the pipeline using this command:

nextflow run -ansi-log false main.nf

I will get this error:

Command error:
  ERROR: output folder and temporary folder required. Please check --od and --tmp.

Here is the rmats.nf module:

process RMATS {
    tag "paired_rmats: ${sample1Name}_${sample2Name}"
    label 'rmats_4.1.2'
    label 'rmats_4.1.2_RMATS'
    container = 'quay.io/biocontainers/rmats:4.1.2--py37haf75f70_1'
    shell = ['/bin/bash', '-euo', 'pipefail']

    input:
    path(STAR_genome_index)
    path(genome_gtf)
    path(s1)
    path(s2)

    output:
    path("*.txt", emit: final_results_rmats)


    script:
    """
    rmats.py \
    --s1 ${s1} \
        --s2 ${s2} \
        --gtf ${genome_gtf} \
        --readLength 150 \
        --nthread 10
        --novelSS
        --mil 50
        --mel 500
        --bi ${STAR_genome_index} \
        --keepTemp \
        --od final_results_rmats \
        --tmp final_results_rmats
    """
 }

here is the main.nf:

#!/usr/bin/env nextflow
nextflow.preview.dsl=2

include RMATS from './modules/rmats.nf'
gtf_ch = Channel.fromPath(params.gtf)
s1_ch = Channel.fromPath(params.s1)
s2_ch = Channel.fromPath(params.s2)
STAR_genome_index_ch = Channel.fromPath(params.STAR_genome_index)

workflow {
    rmats_AS_calling_ch=RMATS(s1_ch, s2_ch, gtf_ch, STAR_genome_index_ch)

}

in the script section the arguments that are in {} are given in the config file. Do you know what could be the problem?

Upvotes: 1

Views: 624

Answers (1)

Steve
Steve

Reputation: 54572

Your just missing some backslash characters in your script block, which are required by your shell for line continuation. You may also like to consider escaping the backslash characters to have Nextflow write scripts (.command.sh in the working directory) with line continuation:

    script:
    """
    rmats.py \\
        --s1 ${s1} \\
        --s2 ${s2} \\
        --gtf ${genome_gtf} \\
        --readLength 150 \\
        --nthread 10 \\
        --novelSS \\
        --mil 50 \\
        --mel 500 \\
        --bi ${STAR_genome_index} \\
        --keepTemp \\
        --od final_results_rmats \\
        --tmp final_results_rmats
    """

Upvotes: 2

Related Questions