Source-only snapshot of the cluster branch for WES execution. Large reference files (HPA/MANE/ensemble FASTA, model weights, ~597 MB) are omitted: they are baked into the container images at build time and mounted from the dreamdock-data PVC at runtime, and exceed the Gitea request size limit. Pipeline entry point is main.nf, which orchestrates the biotransformer, conplex and tissue modules as a single workflow. Ligand inputs are read from the eureka workspace; protein_zarr and chembl_db come from the dreamdock-data PVC.
91 lines
2.6 KiB
Plaintext
Executable File
91 lines
2.6 KiB
Plaintext
Executable File
manifest {
|
|
name = 'Digital Trial'
|
|
author = 'omic'
|
|
recurseSubmodules = true
|
|
homePage = 'https://gitlab.com/omic/next/registry/tools/digital-trial.git'
|
|
description = 'Digital drug protein interactions'
|
|
mainScript = 'main.nf'
|
|
nextflowVersion = '!>=21.04.3'
|
|
defaultBranch = 'master'
|
|
}
|
|
|
|
docker {
|
|
enabled = true
|
|
temp = 'auto'
|
|
remove = true
|
|
}
|
|
|
|
process {
|
|
withLabel: 'gpu_process' {
|
|
containerOptions = '--gpus all --rm'
|
|
|
|
pod = [
|
|
[nodeSelector: [gpu: 'yes', 'gpu-type': 'geforce-rtx-3090']]
|
|
]
|
|
}
|
|
|
|
withLabel: 'cpu_process' {
|
|
containerOptions = '--rm'
|
|
}
|
|
}
|
|
|
|
profiles {
|
|
// Minimal k8s profile: WES injects its own profile.config via -C, which supplies the
|
|
// executor, namespace, service account, workDir and PVC mounts. Anything set here that
|
|
// WES also sets is either overridden or conflicts, so keep this deliberately sparse.
|
|
//
|
|
// NOTE: the dreamdock-data PVC must be mounted by the WES-side profile for
|
|
// params.protein_zarr and params.chembl_db (/mnt/dreamdock-data/...) to resolve.
|
|
k8s {
|
|
process.executor = 'k8s'
|
|
}
|
|
|
|
// Full standalone k8s profile for running this pipeline directly (not via WES),
|
|
// e.g. `nextflow run main.nf -profile k8s_standalone` from a pod on the cluster.
|
|
k8s_standalone {
|
|
process.executor = 'k8s'
|
|
process.namespace = 'bioinformatics'
|
|
process.debug = true
|
|
|
|
workDir = "/mnt/dreamdock-data/digital_trials/workdir"
|
|
|
|
executor {
|
|
queueSize = 0 // Increase to desired concurrency
|
|
// submitRateLimit = '1 sec' // Recommended to prevent K8s API timeouts
|
|
}
|
|
|
|
k8s {
|
|
serviceAccount = 'nextflow-sa'
|
|
namespace = 'bioinformatics'
|
|
storageClaimName = 'dreamdock-data'
|
|
storageMountPath = '/mnt/dreamdock-data'
|
|
|
|
pullPolicy = 'IfNotPresent'
|
|
cleanup = true // delete pods after Ctrl+C or finished?
|
|
|
|
imagePullSecrets = 'omic-registry-secret'
|
|
|
|
// RUN AS DIFFERENT USERS
|
|
// securityContext = [fsGroup: 1000]
|
|
// securityContext = [
|
|
// runAsUser: 1000,
|
|
// fsGroup: 1000,
|
|
// runAsNonRoot: true
|
|
// ]
|
|
}
|
|
|
|
// Pod-level customization
|
|
process.pod = [
|
|
[env: 'NXF_DEBUG', value: '0'],
|
|
[label: 'omic-app', value: 'dreamdock'],
|
|
[imagePullSecret: 'gitlab-registry-secret'],
|
|
// [nodeSelector: [gpu: 'yes', 'gpu-type': 'rtx-3090']],
|
|
[hostPath: '/mnt/ZINC-22/', mountPath: '/mnt/ZINC-22/']
|
|
// [volumeClaim: 'conplex-index-builder-data', mountPath: '/mnt/conplex-index/']
|
|
// [privileged: true],
|
|
]
|
|
|
|
}
|
|
}
|
|
|