add EventScalesetResizeScheduled (#1047)

This commit is contained in:
bmc-msft
2021-07-07 14:15:26 -04:00
committed by GitHub
parent 7b2679a1ce
commit 52f83b5b26
7 changed files with 121 additions and 14 deletions

View File

@ -40,6 +40,7 @@ from onefuzztypes.events import (
EventScalesetCreated,
EventScalesetDeleted,
EventScalesetFailed,
EventScalesetResizeScheduled,
EventScalesetStateUpdated,
EventTaskCreated,
EventTaskFailed,
@ -200,6 +201,9 @@ def main() -> None:
pool_name=PoolName("example"),
state=ScalesetState.init,
),
EventScalesetResizeScheduled(
scaleset_id=UUID(int=0), pool_name=PoolName("example"), size=0
),
EventJobCreated(
job_id=UUID(int=0),
config=JobConfig(

View File

@ -304,6 +304,13 @@ class ScalesetState(Enum):
halt = "halt"
creation_failed = "creation_failed"
@classmethod
def can_update(cls) -> List["ScalesetState"]:
"""
set of states that indicate the scaleset can be updated
"""
return [cls.running, cls.resize]
@classmethod
def needs_work(cls) -> List["ScalesetState"]:
"""

View File

@ -117,6 +117,12 @@ class EventScalesetDeleted(BaseEvent):
pool_name: PoolName
class EventScalesetResizeScheduled(BaseEvent):
scaleset_id: UUID
pool_name: PoolName
size: int
class EventPoolDeleted(BaseEvent):
pool_name: PoolName
@ -223,6 +229,7 @@ Event = Union[
EventScalesetCreated,
EventScalesetDeleted,
EventScalesetStateUpdated,
EventScalesetResizeScheduled,
EventTaskFailed,
EventTaskStateUpdated,
EventTaskCreated,
@ -252,6 +259,7 @@ class EventType(Enum):
scaleset_deleted = "scaleset_deleted"
scaleset_failed = "scaleset_failed"
scaleset_state_updated = "scaleset_state_updated"
scaleset_resize_scheduled = "scaleset_resize_scheduled"
task_created = "task_created"
task_failed = "task_failed"
task_state_updated = "task_state_updated"
@ -282,6 +290,7 @@ EventTypeMap = {
EventType.scaleset_deleted: EventScalesetDeleted,
EventType.scaleset_failed: EventScalesetFailed,
EventType.scaleset_state_updated: EventScalesetStateUpdated,
EventType.scaleset_resize_scheduled: EventScalesetResizeScheduled,
EventType.task_created: EventTaskCreated,
EventType.task_failed: EventTaskFailed,
EventType.task_state_updated: EventTaskStateUpdated,