updates
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from safety.events.handlers import EventHandler
|
||||
from safety.events.types import EventBusReadyEvent
|
||||
from safety.events.utils import emit_firewall_heartbeat
|
||||
|
||||
from safety.tool import ToolInspector
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from safety.events.event_bus import EventBus
|
||||
|
||||
|
||||
class HeartbeatInspectionEventHandler(EventHandler[EventBusReadyEvent]):
|
||||
"""
|
||||
Inspect the system for installed tools and send an emit
|
||||
a firewall heartbeat event.
|
||||
"""
|
||||
|
||||
def __init__(self, event_bus: "EventBus") -> None:
|
||||
super().__init__()
|
||||
self.event_bus = event_bus
|
||||
|
||||
async def handle(self, event: EventBusReadyEvent):
|
||||
ctx = event.payload.ctx
|
||||
inspector = ToolInspector(timeout=1.0)
|
||||
tools = await inspector.inspect_all_tools()
|
||||
|
||||
emit_firewall_heartbeat(self.event_bus, ctx, tools=tools)
|
||||
Reference in New Issue
Block a user