From 2bbfca65e9e25a407153a97610ddcb3bd6b934c2 Mon Sep 17 00:00:00 2001 From: amondal2 Date: Wed, 16 Oct 2024 08:30:28 -0700 Subject: [PATCH] generate_config script --- pipelines/epinow2/generate_config.py | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/pipelines/epinow2/generate_config.py b/pipelines/epinow2/generate_config.py index c38ae86..016e373 100644 --- a/pipelines/epinow2/generate_config.py +++ b/pipelines/epinow2/generate_config.py @@ -1,7 +1,11 @@ import os from datetime import datetime -from utils.epinow2.functions import generate_job_id, generate_task_configs +from utils.epinow2.functions import ( + generate_job_id, + generate_task_configs, + validate_args, +) if __name__ == "__main__": """ @@ -17,22 +21,24 @@ # Pull run parameters from environment state = os.environ.get("state", "all") pathogen = os.environ.get("pathogen", "all") - report_date = os.environ.get( - "report_date", datetime.today().strftime("%Y-%m-%d") - ) + report_date = os.environ.get("report_date", datetime.today().strftime("%Y-%m-%d")) reference_date = os.environ.get("reference_date", [report_date]) data_source = os.environ.get("data_source", "nssp") + # Validate and sanitize args + sanitized_args = validate_args( + state=state, + pathogen=pathogen, + report_date=report_date, + reference_date=reference_date, + data_source=data_source, + ) + # Generate job-specific parameters as_of_date = int(datetime.timestamp(datetime.now())) job_id = generate_job_id() # Generate task-specific configs task_configs = generate_task_configs( - state=state, - report_date=report_date, - reference_date=reference_date, - as_of_date=as_of_date, - job_id=job_id, - data_source=data_source, - ) + **sanitized_args, as_of_date=as_of_date, job_id=job_id + ) \ No newline at end of file