1
0
Fork 0
mirror of https://github.com/MillironX/nf-configs.git synced 2024-11-25 17:29:55 +00:00

Merge pull request #284 from projectoriented/hasta

Add Hasta config
This commit is contained in:
Alexander Peltzer 2021-09-28 11:20:16 +02:00 committed by GitHub
commit 09418b5da9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 84 additions and 1 deletions

View file

@ -40,6 +40,7 @@ jobs:
- 'genouest' - 'genouest'
- 'gis' - 'gis'
- 'google' - 'google'
- 'hasta'
- 'hebbe' - 'hebbe'
- 'icr_davros' - 'icr_davros'
- 'ifb_core' - 'ifb_core'
@ -70,6 +71,6 @@ jobs:
sudo mv nextflow /usr/local/bin/ sudo mv nextflow /usr/local/bin/
- name: Check ${{ matrix.profile }} profile - name: Check ${{ matrix.profile }} profile
env: env:
SCRATCH: '~' SCRATCH: "~"
NXF_GLOBAL_CONFIG: awsbatch.config NXF_GLOBAL_CONFIG: awsbatch.config
run: nextflow run ${GITHUB_WORKSPACE}/configtest.nf --custom_config_base=${GITHUB_WORKSPACE} -profile ${{ matrix.profile }} run: nextflow run ${GITHUB_WORKSPACE}/configtest.nf --custom_config_base=${GITHUB_WORKSPACE} -profile ${{ matrix.profile }}

View file

@ -112,6 +112,7 @@ Currently documentation is available for the following systems:
* [GENOUEST](docs/genouest.md) * [GENOUEST](docs/genouest.md)
* [GIS](docs/gis.md) * [GIS](docs/gis.md)
* [GOOGLE](docs/google.md) * [GOOGLE](docs/google.md)
* [HASTA](docs/hasta.md)
* [HEBBE](docs/hebbe.md) * [HEBBE](docs/hebbe.md)
* [ICR_DAVROS](docs/icr_davros.md) * [ICR_DAVROS](docs/icr_davros.md)
* [JAX](docs/jax.md) * [JAX](docs/jax.md)

40
conf/hasta.config Normal file
View file

@ -0,0 +1,40 @@
// Profile config names for nf-core/configs
params {
config_profile_description = 'Hasta, a local cluster setup at Clinical Genomics, Stockholm.'
config_profile_contact = 'Clinical Genomics, Stockholm'
config_profile_url = 'https://github.com/Clinical-Genomics'
priority = null
clusterOptions = null
schema_ignore_params = "priority,clusterOptions"
}
singularity {
enabled = true
}
params {
max_memory = 180.GB
max_cpus = 36
max_time = 336.h
}
process {
executor = 'slurm'
clusterOptions = { "-A $params.priority ${params.clusterOptions ?: ''}" }
}
profiles {
dev_prio {
params {
priority = 'development'
clusterOptions = "--qos=low"
}
}
prod_prio {
params {
priority = 'production'
clusterOptions = "--qos=low"
}
}
}

View file

@ -0,0 +1,11 @@
process {
withName:'PICARD_MARKDUPLICATES' {
cpus = { check_max( 13 * task.attempt, 'cpus' ) }
memory = { check_max( 130.GB * task.attempt, 'memory' ) }
}
withName:'DEEPVARIANT' {
cpus = { check_max( 16 * task.attempt, 'cpus' ) }
memory = { check_max( 80.GB * task.attempt, 'memory' ) }
}
}

16
docs/hasta.md Normal file
View file

@ -0,0 +1,16 @@
# nf-core/configs: Hasta Configuration
## Using the Hasta config profile
Before running the pipeline `Nextflow` will need to be install in the conda environment being used.
To use, run the pipeline with `-profile hasta` (one hyphen).
This will download and launch the [`hasta.config`](../conf/hasta.config) which has been pre-configured with a setup suitable for the hasta servers.
It will enable `Nextflow` to manage the pipeline jobs via the `Slurm` job scheduler.
Using this profile, `Docker` image(s) containing required software(s) will be downloaded, and converted to `Singularity` image(s) if needed before execution of the pipeline.
Recent version of `Nextflow` also support the environment variable `NXF_SINGULARITY_CACHEDIR` which can be used to supply images. A use case: `NXF_SINGULARITY_CACHEDIR=/path/to/images; export NXF_SINGULARITY_CACHEDIR` before running the pipeline.
## Development and production config
Each user on hasta has a priority based on their allocated team, either development or production. To enable this when submitting a job to Slurm, submit with `-profile hasta,dev_prio` or `-profile hasta,prod_prio`. This overwrites certain parts of the config and submits the job based on different priorities.

View file

@ -34,6 +34,7 @@ profiles {
genouest { includeConfig "${params.custom_config_base}/conf/genouest.config" } genouest { includeConfig "${params.custom_config_base}/conf/genouest.config" }
gis { includeConfig "${params.custom_config_base}/conf/gis.config" } gis { includeConfig "${params.custom_config_base}/conf/gis.config" }
google { includeConfig "${params.custom_config_base}/conf/google.config" } google { includeConfig "${params.custom_config_base}/conf/google.config" }
hasta { includeConfig "${params.custom_config_base}/conf/hasta.config" }
hebbe { includeConfig "${params.custom_config_base}/conf/hebbe.config" } hebbe { includeConfig "${params.custom_config_base}/conf/hebbe.config" }
icr_davros { includeConfig "${params.custom_config_base}/conf/icr_davros.config" } icr_davros { includeConfig "${params.custom_config_base}/conf/icr_davros.config" }
ifb_core { includeConfig "${params.custom_config_base}/conf/ifb_core.config" } ifb_core { includeConfig "${params.custom_config_base}/conf/ifb_core.config" }

View file

@ -0,0 +1,13 @@
/*
* -------------------------------------------------
* nfcore/raredisease custom profile Nextflow config file
* -------------------------------------------------
* Config options for custom environments.
* Cluster-specific config options should be saved
* in the conf/pipeline/raredisease folder and imported
* under a profile name here.
*/
profiles {
hasta { includeConfig "${params.custom_config_base}/conf/pipeline/raredisease/hasta.config" }
}