ERROR ~ No such variable: ch_multiqc_report when trying to skip multiqc

I am trying processing ChIP-sequencing data using Nextflow. I am trying to skip the multiqc step as it is giving me some trouble by adding the --skip_multiqc parameter to the command line. However, the process errors out pretty quickly. I have included my command line and the error message below. I was wondering if anyone had any insights. I have tried to run this with Nextflow v23.10.0 and then again with the updated v25.10.2.

Code:

#set up cache directory

NXF_SINGULARITY_CACHEDIR=/vscratch/singularity-cache

#command line

nextflow run nf-core/chipseq --skip_multiqc --input /vscratch/nf_chipProccessing/samplesheet/samplesheet.csv --outdir /vscratch/nf_chipProccessing/results --genome GRCm38 --narrow_peak --read_length 50 -profile singularity

Error message: ERROR ~ No such variable: ch_multiqc_report

I took a quick look at the pipeline code. It looks like a bug on master that has been fixed in dev. So you can either use the dev branch or wait for the next pipeline release. You can check the chipseq repo to be sure

Hi @sky5198 ,

could you please try running with -r dev

nextflow run nf-core/chipseq -r dev –skip_multiqc --input /vscratch/nf_chipProccessing/samplesheet/samplesheet.csv --outdir /vscratch/nf_chipProccessing/results --genome GRCm38 --narrow_peak --read_length 50 -profile singularity

Thank you for the suggestion! Adding the -r dev did help me get further along. For clarification, I am now using nf-core/chipseq 2.2.0dev and Nextflow version 25.12.0-edge. However, I am now running into an issue where bedtools can’t create a temporary file. I feel like it might have something to do with how the scratch or temporary directory is set up. I have ran export NXF_SINGULARITY_CACHEDIR= vscratch/nf-Six1/nf_chipProccessing but it still can’t create the directory. I changed where the cache was going from my original code and there is plenty of storage available.

ERROR \~ Error executing process > 'NFCORE_CHIPSEQ:CHIPSEQ:BAM_BEDGRAPH_BIGWIG_BEDTOOLS_UCSC:BEDTOOLS_GENOMECOV (Input_DUC_REP1)'
Caused by:
  Process \`NFCORE_CHIPSEQ:CHIPSEQ:BAM_BEDGRAPH_BIGWIG_BEDTOOLS_UCSC:BEDTOOLS_GENOMECOV (Input_DUC_REP1)\` terminated with an error exit status (2)


Command executed:

  bedtools \\
      genomecov \\
      -ibam Input_DUC_REP1.mLb.clN.sorted.bam \\      -pc -bga -scale 0.0169010510 -bg \\      | LC_ALL=C sort --parallel=1 --buffer-size=3G -k1,1 -k2,2n \\      > Input_DUC_REP1.mLB.clN.bedGraph    cat <<-END_VERSIONS > versions.yml  "NFCORE_CHIPSEQ:CHIPSEQ:BAM_BEDGRAPH_BIGWIG_BEDTOOLS_UCSC:BEDTOOLS_GENOMECOV":      bedtools: $(bedtools --version | sed -e "s/bedtools v//g")  END_VERSIONS

Command exit status:  2
Command output:  (empty)                               
Command error:  sort: cannot create temporary file in '/scratch/22974174': No such file or directory
Work dir:  /vscratch/nf_chipProccessing/work/c1/d295f5376638efcfdf48dae42f0f28           
Container:  /vscratch/nf-Six1/nf_chipProccessing/work/singularity/community.wave.seqera.io-library-bedtools_coreutils-a623c13f66d5262b.img

This could be the a HPC setup issue.

/scratch/22974174 looks like a HPC scratch/job_id
could be from export TMPDIR=/scratch/$SLURM_JOB_ID

My idea is to overwrite the TMPDIR definition to use the workDir defined in nextflow. Not sure if the following is going to work, but you could try adding this into your nextflow config

process {
    env.TMPDIR = “${task.workDir}”
}

Also have you run this pipeline successfully before on your HPC? If you have run other nf-core pipeline successfully before, you could try to compare the nextflow.config files.

Thank you everyone for the help! I have found that if I use nextflow version 23.10.0, nf-core/chipseq v2.1.0 and update MultiQC to 1.33, I can run the pipeline straight through without any errors. I will keep in mind overwriting the TMPDIR because that might be useful if I run into issues in the future.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.