Configure synthea-alldiseases for WES execution

- Rewrite params.json to match WES tool registry format
- Update main.nf to use Harbor container image
- Add k8s profile to nextflow.config for WES/Kubernetes execution
- Use s3://omic/eureka paths for output
This commit is contained in:
2026-03-25 12:31:34 +01:00
parent e10ae0cf81
commit d468509ec3
3 changed files with 195 additions and 160 deletions

View File

@@ -1,14 +1,117 @@
{
"disease_name": "Parkinson's Disease",
"modules_dir": "modules",
"output_dir": "/mnt/OmicNAS/private/old/olamide/synthea/output/new",
"generate_patients": true,
"population": 10,
"gender": 0.5,
"min_age": 0,
"max_age": 90,
"analyze_patient_data": false,
"report_format": "html",
"force_generate": false,
"publish_dir": "published_output"
"params": {
"disease_name": {
"type": "string",
"description": "Disease name to generate synthetic patients for",
"default": "Diabetes",
"required": true,
"pipeline_io": "parameter",
"var_name": "params.disease_name",
"examples": [
"Diabetes",
"Hypertension",
"Lung Cancer"
],
"pattern": ".*",
"enum": [],
"validation": {},
"notes": "The disease name used to find or generate a Synthea disease module. Case-insensitive."
},
"population": {
"type": "integer",
"description": "Number of synthetic patients to generate",
"default": 10,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.population",
"examples": [
10,
100,
1000
],
"pattern": "^\\d+$",
"enum": [],
"validation": {
"min": 1,
"max": 10000
},
"notes": "Higher numbers take longer to generate."
},
"gender": {
"type": "number",
"description": "Proportion of female patients (0.0 = all male, 1.0 = all female)",
"default": 0.5,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.gender",
"examples": [
0.5,
0.0,
1.0
],
"pattern": "^[01]\\.?\\d*$",
"enum": [],
"validation": {
"min": 0.0,
"max": 1.0
},
"notes": "Decimal between 0.0 and 1.0 representing the proportion of female patients."
},
"min_age": {
"type": "integer",
"description": "Minimum age of generated patients",
"default": 0,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.min_age",
"examples": [
0,
18,
40
],
"pattern": "^\\d+$",
"enum": [],
"validation": {
"min": 0,
"max": 140
},
"notes": "Minimum patient age in years."
},
"max_age": {
"type": "integer",
"description": "Maximum age of generated patients",
"default": 90,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.max_age",
"examples": [
90,
65,
100
],
"pattern": "^\\d+$",
"enum": [],
"validation": {
"min": 1,
"max": 140
},
"notes": "Maximum patient age in years."
},
"outdir": {
"type": "folder",
"description": "Output directory for generated patient data",
"default": "s3://omic/eureka/synthea-alldiseases/output",
"required": true,
"pipeline_io": "output",
"var_name": "params.outdir",
"examples": [
"s3://omic/eureka/synthea-alldiseases/output",
"s3://omic/eureka/synthea-alldiseases/results"
],
"pattern": ".*",
"enum": [],
"validation": {},
"notes": "Directory where generated FHIR patient bundles will be stored."
}
}
}