From 8dd0ef8d6ab60b2c66ea0a9deef4dd0b36474fd7 Mon Sep 17 00:00:00 2001 From: Olamide Isreal Date: Tue, 24 Mar 2026 21:03:07 +0100 Subject: [PATCH] Configure propka pipeline for WES/k8s execution - Update container reference to harbor.cluster.omic.ai/omic/propka:latest - Add k8s profile to nextflow.config matching reference tool pattern - Update params.json with s3://omic/eureka/propka/ paths - Add stageInMode 'copy' to process definition - Set params defaults to null for WES compatibility --- main.nf | 13 +++++++------ nextflow.config | 30 +++++++++++++++--------------- params.json | 18 +++++++++--------- 3 files changed, 31 insertions(+), 30 deletions(-) diff --git a/main.nf b/main.nf index c11293d..26ec68a 100644 --- a/main.nf +++ b/main.nf @@ -2,22 +2,23 @@ nextflow.enable.dsl=2 -params.pdb = "/mnt/OmicNAS/private/old/olamide/propka/input/1HPX.pdb" -params.outdir = "/mnt/OmicNAS/private/old/olamide/propka/output" +params.pdb = null +params.outdir = null params.ph = 7.0 params.options = "" process PROPKA { - container 'propka:latest' + container 'harbor.cluster.omic.ai/omic/propka:latest' publishDir params.outdir, mode: 'copy' - + stageInMode 'copy' + input: path pdb - + output: path "${pdb.baseName}.pka", emit: pka_file path "run.log" - + script: """ propka3 ${params.options} --pH ${params.ph} ${pdb} 2>&1 | tee run.log diff --git a/nextflow.config b/nextflow.config index bdf4600..c89b5a2 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,7 +1,7 @@ // Manifest for Nextflow metadata manifest { name = 'PROPKA-Nextflow' - author = 'Generated from PROPKA repository' + author = 'Olamide' homePage = 'https://github.com/jensengroup/propka' description = 'Nextflow pipeline for PROPKA - Empirical pKa prediction for proteins and protein-ligand complexes' mainScript = 'main.nf' @@ -10,16 +10,24 @@ manifest { // Global default parameters params { - pdb = "/mnt/OmicNAS/private/old/olamide/propka/input/1HPX.pdb" - outdir = "/mnt/OmicNAS/private/old/olamide/propka/output" + pdb = null + outdir = null ph = 7.0 options = "" } -// Container configurations -docker { - enabled = true - runOptions = '' +profiles { + standard { + docker { + enabled = true + runOptions = '--rm' + } + } + k8s { + process { + container = 'harbor.cluster.omic.ai/omic/propka:latest' + } + } } // Process configurations @@ -27,11 +35,3 @@ process { cpus = 1 memory = '4 GB' } - -// Execution configurations -executor { - $local { - cpus = 2 - memory = '4 GB' - } -} diff --git a/params.json b/params.json index aed0259..2f2d90f 100644 --- a/params.json +++ b/params.json @@ -2,30 +2,30 @@ "params": { "pdb": { "type": "file", - "description": "Path pattern to PDB files for pKa prediction", - "default": "/mnt/OmicNAS/private/old/olamide/propka/input/1HPX.pdb", + "description": "Path to input PDB file for pKa prediction", + "default": "s3://omic/eureka/propka/1HPX.pdb", "required": true, "pipeline_io": "input", "var_name": "params.pdb", "examples": [ - "/mnt/OmicNAS/private/old/olamide/propka/input/protein.pdb", - "/mnt/OmicNAS/private/old/olamide/propka/input/*.pdb" + "s3://omic/eureka/propka/1HPX.pdb", + "s3://omic/eureka/propka/protein.pdb" ], "pattern": ".*\\.pdb$", "enum": [], "validation": {}, - "notes": "Can be a single PDB file or a pattern to match multiple PDB files." + "notes": "PDB file containing the protein structure for pKa prediction. Files should be in standard PDB format." }, "outdir": { "type": "folder", - "description": "Directory for PROPKA prediction results", - "default": "/mnt/OmicNAS/private/old/olamide/propka/output", + "description": "Output directory for PROPKA prediction results", + "default": "s3://omic/eureka/propka/output", "required": true, "pipeline_io": "output", "var_name": "params.outdir", "examples": [ - "/mnt/OmicNAS/private/old/olamide/propka/output", - "/path/to/custom/output" + "s3://omic/eureka/propka/output", + "s3://omic/eureka/propka/results" ], "pattern": ".*", "enum": [],