This commit is contained in:
Iliyan Angelov
2025-12-01 06:50:10 +02:00
parent 91f51bc6fe
commit 62c1fe5951
4682 changed files with 544807 additions and 31208 deletions

View File

@@ -0,0 +1,40 @@
from typing import TYPE_CHECKING
from safety_schemas.models.events import EventType
from safety.events.event_bus import EventBus
from safety.events.types import InternalEventType
from .handlers import HeartbeatInspectionEventHandler
if TYPE_CHECKING:
from safety.models import SafetyCLI
def register_event_handlers(event_bus: "EventBus", obj: "SafetyCLI") -> None:
"""
Subscribes to the firewall events that are relevant to the current context.
"""
handle_inspection = HeartbeatInspectionEventHandler(event_bus=event_bus)
event_bus.subscribe([InternalEventType.EVENT_BUS_READY], handle_inspection)
if sec_events_handler := obj.security_events_handler:
event_bus.subscribe(
[
EventType.FIREWALL_CONFIGURED,
EventType.FIREWALL_HEARTBEAT,
EventType.FIREWALL_DISABLED,
EventType.PACKAGE_INSTALLED,
EventType.PACKAGE_UNINSTALLED,
EventType.PACKAGE_UPDATED,
EventType.TOOL_COMMAND_EXECUTED,
EventType.INIT_STARTED,
EventType.FIREWALL_SETUP_RESPONSE_CREATED,
EventType.FIREWALL_SETUP_COMPLETED,
EventType.CODEBASE_DETECTION_STATUS,
EventType.CODEBASE_SETUP_RESPONSE_CREATED,
EventType.CODEBASE_SETUP_COMPLETED,
EventType.INIT_SCAN_COMPLETED,
EventType.INIT_EXITED,
],
sec_events_handler,
)