class TaskScrollState(Base): task: str = StringField(required=True) metrics: Sequence[MetricState] = ListField([MetricState], required=True) last_min_iter: Optional[int] = IntField() last_max_iter: Optional[int] = IntField() def reset(self): """Reset the scrolling state for the metric""" self.last_min_iter = self.last_max_iter = None
class LogEventsScrollState(Base, JsonSerializableMixin): id: str = StringField(required=True) task: str = StringField(required=True) last_min_timestamp: Optional[int] = IntField() last_max_timestamp: Optional[int] = IntField() def reset(self): """Reset the scrolling state """ self.last_min_timestamp = self.last_max_timestamp = None
class Artifact(models.Base): key = StringField(required=True) type = StringField(required=True) mode = StringField(validators=Enum("input", "output"), default="output") uri = StringField() hash = StringField() content_size = IntField() timestamp = IntField() type_data = EmbeddedField(ArtifactTypeData) display_data = ListField([list])
class Artifact(models.Base): key = StringField(required=True) type = StringField(required=True) mode = StringField(validators=Enum(*get_options(ArtifactModes)), default=DEFAULT_ARTIFACT_MODE) uri = StringField() hash = StringField() content_size = IntField() timestamp = IntField() type_data = EmbeddedField(ArtifactTypeData) display_data = ListField([list])
class MetricScrollState(Base): task: str = StringField(required=True) name: str = StringField(required=True) last_min_iter: Optional[int] = IntField() last_max_iter: Optional[int] = IntField() timestamp: int = IntField(default=0) variants: Sequence[VariantScrollState] = ListField([VariantScrollState]) def reset(self): """Reset the scrolling state for the metric""" self.last_min_iter = self.last_max_iter = None
class Pet(models.Base): id = IntField() category = EmbeddedField(Category) name = StringField() photo_urls = ListField(str) tags = ListField(Tag) status = StringField()
class GetTokenRequest(Base): """ User requests a token """ expiration_sec = IntField( validators=Max(config.get("apiserver.auth.max_expiration_sec")), nullable=True ) """ Expiration time for token in seconds. """
class StatusReportRequest(WorkerRequest): task = StringField() # task the worker is running on queue = StringField() # queue from which task was taken queues = ListField( str ) # list of queues this worker listens to. if None, this will not update the worker's queues list. timestamp = IntField(required=True) machine_stats = EmbeddedField(MachineStats)
class WorkerEntry(Base, JsonSerializableMixin): key = StringField() # not required due to migration issues id = StringField(required=True) user = EmbeddedField(IdNameEntry) company = EmbeddedField(IdNameEntry) ip = StringField() task = EmbeddedField(IdNameEntry) queue = StringField() # queue from which current task was taken queues = ListField(str) # list of queues this worker listens to register_time = DateTimeField(required=True) register_timeout = IntField(required=True) last_activity_time = DateTimeField(required=True) last_report_time = DateTimeField()
class WorkerEntry(Base): key = StringField() # not required due to migration issues id = StringField(required=True) user = EmbeddedField(IdNameEntry) company = EmbeddedField(IdNameEntry) ip = StringField() task = EmbeddedField(IdNameEntry) queue = StringField() # queue from which current task was taken queues = ListField(str) # list of queues this worker listens to register_time = DateTimeField(required=True) register_timeout = IntField(required=True) last_activity_time = DateTimeField(required=True) last_report_time = DateTimeField() def to_json(self): return json.dumps(self.to_struct()) @classmethod def from_json(cls, s): return cls(**json.loads(s))
class StartedResponse(UpdateResponse): started = IntField()
class RevokeCredentialsResponse(Base): revoked = IntField(required=True)
class VariantState(Base): variant: str = StringField(required=True) last_invalid_iteration: int = IntField()
class ArchiveResponse(models.Base): archived = IntField()
class MetricState(Base): metric: str = StringField(required=True) variants: Sequence[VariantState] = ListField([VariantState], required=True) timestamp: int = IntField(default=0)
class ResetResponse(UpdateResponse): deleted_indices = ListField(items_types=six.string_types) dequeued = DictField() frames = DictField() events = DictField() model_deleted = IntField()
class QueueEntry(IdNameEntry): next_task = EmbeddedField(IdNameEntry) num_tasks = IntField()
class VariantScrollState(Base): name: str = StringField(required=True) recycle_url_marker: str = StringField() last_invalid_iteration: int = IntField()
class ResetBatchItem(UpdateBatchItem): dequeued: bool = BoolField() deleted_models = IntField() urls = DictField()
class ResetResponse(UpdateResponse): dequeued = DictField() events = DictField() deleted_models = IntField() urls = DictField()
class AddUpdateModelRequest(TaskRequest): name = StringField(required=True) model = StringField(required=True) type = StringField(required=True, validators=Enum(*get_options(TaskModelTypes))) iteration = IntField()
class EnqueueResponse(UpdateResponse): queued = IntField()
class DequeueResponse(UpdateResponse): dequeued = IntField()
class Tag(models.Base): id = IntField() name = StringField()
class StatsReportBase(StatsBase): from_date = FloatField(required=True, validators=validators.Min(0)) to_date = FloatField(required=True, validators=validators.Min(0)) interval = IntField(required=True, validators=validators.Min(1))
class GetMetricsRequest(Base): queue_ids = ListField([str]) from_date = FloatField(required=True, validators=validators.Min(0)) to_date = FloatField(required=True, validators=validators.Min(0)) interval = IntField(required=True, validators=validators.Min(1))
class CurrentTaskEntry(IdNameEntry): running_time = IntField() last_iteration = IntField()
class MoveTaskRequest(TaskRequest): count = IntField(default=1)
class GetAllRequest(Base): last_seen = IntField(default=3600)
class MoveTaskResponse(Base): position = IntField()