Skip to content

Commit e5d59d7

Browse files
committed
fix InputDataPolicy schema definition
1 parent 393f498 commit e5d59d7

2 files changed

Lines changed: 15 additions & 6 deletions

File tree

  • diracx-core/src/diracx/core/config
  • diracx-logic/src/diracx/logic/jobs

diracx-core/src/diracx/core/config/schema.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -147,20 +147,29 @@ class JobDescriptionConfig(BaseModel):
147147
AllowedJobTypes: list[str] = ["User", "Test", "Hospital"]
148148

149149

150-
class InputDataPolicyConfig(BaseModel):
151-
InputDataModule: str = "LocalInputData"
150+
class InputDataPolicyProtocolsConfig(BaseModel):
151+
Remote: list[str] = []
152+
Local: list[str] = []
152153

153154

154-
class ExternalsPolicyConfig(BaseModel):
155-
SoftwareDistModule: str = "LocalSoftwareDist"
155+
class InputDataPolicyConfig(BaseModel):
156+
# TODO: Remove this once the model is extended to support everything
157+
model_config = ConfigDict(extra="ignore", frozen=True)
158+
159+
Default: str = "Default = DIRAC.WorkloadManagementSystem.Client.InputDataByProtocol"
160+
Download: str = "DIRAC.WorkloadManagementSystem.Client.DownloadInputData"
161+
Protocol: str = "DIRAC.WorkloadManagementSystem.Client.InputDataByProtocol"
162+
AllReplicas: bool = True
163+
Protocols: InputDataPolicyProtocolsConfig = InputDataPolicyProtocolsConfig()
164+
InputDataModule: str = "DIRAC.Core.Utilities.InputDataResolution"
156165

157166

158167
class OperationsConfig(BaseModel):
159168
EnableSecurityLogging: bool = False
160-
ExternalsPolicy: ExternalsPolicyConfig = ExternalsPolicyConfig()
161169
InputDataPolicy: InputDataPolicyConfig = InputDataPolicyConfig()
162170
JobDescription: JobDescriptionConfig = JobDescriptionConfig()
163171
Services: ServicesConfig = ServicesConfig()
172+
SoftwareDistModule: str = "LocalSoftwareDist"
164173

165174
Cloud: MutableMapping[str, Any] | None = None
166175
DataConsistency: MutableMapping[str, Any] | None = None

diracx-logic/src/diracx/logic/jobs/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def make_check_and_prepare_job_config(config: Config, vo: str):
3939
ops = config.Operations[vo]
4040
return {
4141
"inputDataPolicyForVO": ops.InputDataPolicy.InputDataModule,
42-
"softwareDistModuleForVO": ops.ExternalsPolicy.SoftwareDistModule,
42+
"softwareDistModuleForVO": ops.SoftwareDistModule,
4343
"defaultCPUTimeForOwnerGroup": ops.JobDescription.DefaultCPUTime,
4444
"getDIRACPlatform": partial(find_compatible_platforms, config=config),
4545
}

0 commit comments

Comments
 (0)