nf-test icon indicating copy to clipboard operation
nf-test copied to clipboard

Unable to set `outputDir` in a profile

Open nvnieuwk opened this issue 1 year ago • 0 comments

Hi, I've tried using outputDir with the fixes introduced in the latest version of nf-test, but it's still not working when I try to use it inside of a config specified by a profile.

For example I'm using a setup where I have a profile specific for the nf-test execution. This profile points to a config where I use the outputDir variable to set the output directory.

nf-test.config:

config {

    testsDir "tests"
    workDir ".nf-test"
    configFile "tests/nextflow.config"
    profile "nf_test,docker"

}

nf_test profile config:

/*
========================================================================================
    Nextflow config file for running tests
========================================================================================
*/

params {

    // Limit resources so that this can run on GitHub Actions
    max_cpus        = 2
    max_memory      = '6.GB'
    max_time        = '6.h'

    // Input data
    input           = "${baseDir}/tests/inputs/samplesheet.csv"
    outdir          = "${outputDir}"

    // Genome references
    genomes_ignore  = true
    igenomes_ignore = true
    genome          = 'GRCh38'

    // Required params
    scatter_count   = 2
    project         = "test"
    callers         = "haplotypecaller,vardict"

    // Extras
    vep_merged      = false
    fasta           = params.test_data["homo_sapiens"]["genome"]["genome_fasta"]
    fai             = params.test_data["homo_sapiens"]["genome"]["genome_fasta_fai"]
    roi             = params.test_data["homo_sapiens"]["illumina"]["roi_bed"]

}

Results in this error:

ERROR ~ Unknown config attribute `params.outputDir` -- check config file: /home/nvnieuwk/Documents/cmgg/nf-cmgg-germline/nextflow.config

However it does work when I set the output directory in the when clause inside the test file:

        when {
            params {
                outdir = "${outputDir}"
            }
        }

Possibly related to #125

Thanks in advance! -Nicolas

nvnieuwk avatar Oct 11 '23 13:10 nvnieuwk