mirror of
https://github.com/microsoft/onefuzz.git
synced 2025-06-21 13:51:19 +00:00
add event for scaleset state updates (#882)
This moves all scaleset state updates through `Scaleset.set_state` and adds a new event EventScalesetStateUpdated.
This commit is contained in:
@ -12,6 +12,7 @@ from onefuzztypes.enums import (
|
||||
ContainerType,
|
||||
ErrorCode,
|
||||
NodeState,
|
||||
ScalesetState,
|
||||
TaskState,
|
||||
TaskType,
|
||||
)
|
||||
@ -35,6 +36,7 @@ from onefuzztypes.events import (
|
||||
EventScalesetCreated,
|
||||
EventScalesetDeleted,
|
||||
EventScalesetFailed,
|
||||
EventScalesetStateUpdated,
|
||||
EventTaskCreated,
|
||||
EventTaskFailed,
|
||||
EventTaskHeartbeat,
|
||||
@ -176,6 +178,11 @@ def main() -> None:
|
||||
),
|
||||
),
|
||||
EventScalesetDeleted(scaleset_id=UUID(int=0), pool_name=PoolName("example")),
|
||||
EventScalesetStateUpdated(
|
||||
scaleset_id=UUID(int=0),
|
||||
pool_name=PoolName("example"),
|
||||
state=ScalesetState.init,
|
||||
),
|
||||
EventJobCreated(
|
||||
job_id=UUID(int=0),
|
||||
config=JobConfig(
|
||||
|
@ -10,7 +10,7 @@ from uuid import UUID, uuid4
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from .enums import OS, Architecture, NodeState, TaskState, TaskType
|
||||
from .enums import OS, Architecture, NodeState, ScalesetState, TaskState, TaskType
|
||||
from .models import (
|
||||
AutoScaleConfig,
|
||||
Error,
|
||||
@ -150,6 +150,12 @@ class EventNodeDeleted(BaseEvent):
|
||||
pool_name: PoolName
|
||||
|
||||
|
||||
class EventScalesetStateUpdated(BaseEvent):
|
||||
scaleset_id: UUID
|
||||
pool_name: PoolName
|
||||
state: ScalesetState
|
||||
|
||||
|
||||
class EventNodeStateUpdated(BaseEvent):
|
||||
machine_id: UUID
|
||||
scaleset_id: Optional[UUID]
|
||||
@ -192,6 +198,7 @@ Event = Union[
|
||||
EventScalesetFailed,
|
||||
EventScalesetCreated,
|
||||
EventScalesetDeleted,
|
||||
EventScalesetStateUpdated,
|
||||
EventTaskFailed,
|
||||
EventTaskStateUpdated,
|
||||
EventTaskCreated,
|
||||
@ -218,6 +225,7 @@ class EventType(Enum):
|
||||
scaleset_created = "scaleset_created"
|
||||
scaleset_deleted = "scaleset_deleted"
|
||||
scaleset_failed = "scaleset_failed"
|
||||
scaleset_state_updated = "scaleset_state_updated"
|
||||
task_created = "task_created"
|
||||
task_failed = "task_failed"
|
||||
task_state_updated = "task_state_updated"
|
||||
@ -245,6 +253,7 @@ EventTypeMap = {
|
||||
EventType.scaleset_created: EventScalesetCreated,
|
||||
EventType.scaleset_deleted: EventScalesetDeleted,
|
||||
EventType.scaleset_failed: EventScalesetFailed,
|
||||
EventType.scaleset_state_updated: EventScalesetStateUpdated,
|
||||
EventType.task_created: EventTaskCreated,
|
||||
EventType.task_failed: EventTaskFailed,
|
||||
EventType.task_state_updated: EventTaskStateUpdated,
|
||||
|
Reference in New Issue
Block a user