Commit a017cac6 authored by Hines, Jesse's avatar Hines, Jesse
Browse files

Allow overriding dataloader

parent c3e8abe2
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -118,6 +118,13 @@ class SimConfig(RAPSBaseModel, abc.ABC):
    replay: list[ResolvedPath] | None = None
    """ Either: path/to/joblive path/to/jobprofile OR filename.npz """

    dataloader: str | None = None
    """
    Python module path to use as the dataloader when loading replay data. Only relevant if replay is
    set. E.g. Defaults to "raps.dataloaders.<system>" but can be set to your own custom dataloader
    as well.
    """

    encrypt: bool = False
    """ Encrypt sensitive data in telemetry """

+6 −2
Original line number Diff line number Diff line
@@ -85,9 +85,13 @@ class Telemetry:
        self.system = kwargs['system']
        self.config = kwargs.get('config')

        if kwargs.get("dataloader"):
            module = kwargs['dataloader']
        else:
            module = f"raps.dataloaders.{self.system.split('/')[0]}"

        try:
            module = self.system.split("/")[0]
            self.dataloader = importlib.import_module(f"raps.dataloaders.{module}", package=__package__)
            self.dataloader = importlib.import_module(module, package=__package__)
        except ImportError as e:
            print(f"WARNING: Failed to load dataloader: {e}")
            self.dataloader = None