INCLIVA Configuration

All nf-core pipelines have been successfully configured for use on the vlinuxcervantes3 & vlinuxcervantes4 servers at the INCLIVA Health Research Institute. Using this config file will automatically detect which one you are working on, so you do not need to specify it yourself.

To use, run the pipeline with -profile incliva. This will download and launch the incliva.config which has been pre-configured with a setup suitable for the vlinuxcervantes3 & vlinuxcervantes4 servers. When using this profile, if Singularity images have not been downloaded already, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. Downloaded images can be checked in the singularity_path directory defined in the config file.

Running the workflow on the INCLIVA vlinuxcervantes3 & vlinuxcervantes4 servers

Nextflow and Singularity are needed to run any nf-core workflow:

  • Install Nextflow : here
  • Install Singularity : here

By default, Nextflow uses the local executor. The processes are parallelised by spawning multiple threads, taking advantage of the multi-core architecture of the CPU.

Config file

See config file on GitHub

incliva.config
// Profile details
params {
    config_profile_description = 'INCLIVA Health Research Institute profile for nf-core.'
    config_profile_contact = 'Sheila Zúñiga Trejos - bioinfo@incliva.es'
    config_profile_url = 'https://www.incliva.es/en/services/platforms/bioinformatics-unit/'
}
 
// Function to get hostname
def getHostname() {
    def process = 'hostname'.execute()
    process.waitFor()
    return process.text.trim()
}
 
// Function to set singularity path according to which host nextflow is running on
 
def hostname = { getHostname() }
 
if (hostname == 'vlinuxcervantes3srv') {
    System.out.println("\nINFO: working on ${hostname}\n")
 
    // Resources details
    params.max_memory = 60.GB
    params.max_cpus = 15
    singularity.cacheDir =  "/nfs/home/software/singularity/nf_cacheDir"
 
    process {
        resourceLimits = [
            memory: 60.GB,
            cpus: 15,
        ]
    }
 
} else if (hostname == 'vlinuxcervantes4srv') {
    System.out.println("\nINFO: working on ${hostname}.\n")
 
    // Resources details
    params.max_memory = 120.GB
    params.max_cpus = 19
    singularity.cacheDir = "/nfs/home/software/singularity/nf_cacheDir"
 
    process {
        resourceLimits = [
            memory: 120.GB,
            cpus: 19,
        ]
    }
 
} else {
    System.err.println("\nERROR: unknown machine. Update incliva.config on nf-core/configs if you are working on another host.\n")
}
 
// Singularity details
singularity {
    enabled = true
    autoMounts = true
}
 
// Process details
process {
    executor = 'local'
    maxRetries = 2
}