Syntatic sugar to ease TPV configuration.

This commit is contained in:
John Chilton
2025-03-18 13:23:42 -04:00
parent 4607d88509
commit 27da3de69d
2 changed files with 14 additions and 3 deletions
+4 -1
View File
@@ -54,7 +54,10 @@ class ConditionalDependencies:
self.job_runners.append(runner.get("load"))
environments = job_conf_dict.get("execution", {}).get("environments", {})
for env in environments.values():
if "rules_module" in env:
runner = env.get("runner")
if runner == "dynamic_tpv":
self.job_rule_modules.append("tpv.rules")
elif "rules_module" in env:
self.job_rule_modules.append(env.get("rules_module"))
if "job_config" in self.config:
+10 -2
View File
@@ -459,10 +459,18 @@ class JobConfiguration(ConfiguresHandlers):
job_metrics = self.app.job_metrics
execution_dict = job_config_dict.get("execution", {})
environments = execution_dict.get("environments", [])
enviroment_iter = (
environments_list = list(
((e["id"], e) for e in environments) if isinstance(environments, list) else environments.items()
)
for environment_id, environment_dict in enviroment_iter:
for _, environment_dict in environments_list:
runner = environment_dict.get("runner")
if runner == "dynamic_tpv":
environment_dict["runner"] = "dynamic"
environment_dict["type"] = "python"
environment_dict["function"] = "map_tool_to_destination"
environment_dict["rules_module"] = "tpv.rules"
for environment_id, environment_dict in environments_list:
metrics = environment_dict.get("metrics")
if metrics is None:
metrics = {"src": "default"}