Source code for idmtools_platform_comps.ssmt_platform

"""define the ssmt platform.

SSMT platform is the same as the COMPS platform but file access is local.

Copyright 2021, Bill & Melinda Gates Foundation. All rights reserved.
"""
from dataclasses import dataclass, field
from idmtools_platform_comps.comps_operations.asset_collection_operations import CompsPlatformAssetCollectionOperations
from idmtools_platform_comps.comps_operations.experiment_operations import CompsPlatformExperimentOperations
from idmtools_platform_comps.comps_operations.suite_operations import CompsPlatformSuiteOperations
from idmtools_platform_comps.comps_platform import COMPSPlatform, op_defaults
from idmtools_platform_comps.ssmt_operations.simulation_operations import SSMTPlatformSimulationOperations
from idmtools_platform_comps.ssmt_operations.workflow_item_operations import SSMTPlatformWorkflowItemOperations


[docs]@dataclass class SSMTPlatform(COMPSPlatform): """ Represents the platform allowing to run simulations on SSMT. """ _simulations: SSMTPlatformSimulationOperations = field(**op_defaults) _workflow_items: SSMTPlatformWorkflowItemOperations = field(**op_defaults) def __post_init__(self): """ Post method after SSMTPlatform creation. Returns: None """ super().__post_init__() self.__init_interfaces() def __init_interfaces(self): """ Initialize intefaces. Returns: None """ self._experiments = CompsPlatformExperimentOperations(platform=self) self._simulations = SSMTPlatformSimulationOperations(platform=self) self._suites = CompsPlatformSuiteOperations(platform=self) self._workflow_items = SSMTPlatformWorkflowItemOperations(platform=self) self._assets = CompsPlatformAssetCollectionOperations(platform=self)