♻️ refactor: migrate to Go Kubernetes operator

This commit is contained in:
2026-08-13 02:19:27 +07:00
parent 826464a9e5
commit 91c07eb76a
50 changed files with 532 additions and 2930 deletions
@@ -1,3 +1,4 @@
import "./reverse-proxy-event.handler";
import "./server-event.handler";
import "./user-event.handler";
@@ -0,0 +1,29 @@
import { operatorResourceSync, wsService } from "../../application/di-container";
import {
ReverseProxyCreatedEvent,
ReverseProxyDeletedEvent,
ReverseProxyUpdatedEvent,
} from "../../domain/events/reverse-proxy-lifecycle.events";
import { eventBus } from "../event-bus";
import { logger } from "../logger";
eventBus.subscribe(ReverseProxyCreatedEvent, async (event) => {
logger.info(
{ proxyId: event.proxyId, proxyType: event.proxyType },
"Reverse proxy created event"
);
wsService.broadcast("create", event.proxyType, event.proxyId);
await operatorResourceSync.syncReverseProxyById(event.proxyId);
});
eventBus.subscribe(ReverseProxyUpdatedEvent, async (event) => {
logger.info({ proxyId: event.proxyId }, "Reverse proxy updated event");
wsService.broadcast("update", "reverse-proxy", event.proxyId);
await operatorResourceSync.syncReverseProxyById(event.proxyId);
});
eventBus.subscribe(ReverseProxyDeletedEvent, async (event) => {
logger.info({ proxyId: event.proxyId }, "Reverse proxy deleted event");
wsService.broadcast("delete", "reverse-proxy", event.proxyId);
await operatorResourceSync.deleteReverseProxy(event.proxyId);
});
@@ -1,4 +1,4 @@
import { wsService } from "../../application/di-container";
import { operatorResourceSync, wsService } from "../../application/di-container";
import {
ServerCreatedEvent,
ServerDeletedEvent,
@@ -10,14 +10,17 @@ import { logger } from "../logger";
eventBus.subscribe(ServerCreatedEvent, async (event) => {
logger.info({ serverId: event.serverId, serverType: event.serverType }, "Server created event");
wsService.broadcast("create", event.serverType, event.serverId);
await operatorResourceSync.syncServerById(event.serverId);
});
eventBus.subscribe(ServerUpdatedEvent, async (event) => {
logger.info({ serverId: event.serverId }, "Server updated event");
wsService.broadcast("update", "server", event.serverId);
await operatorResourceSync.syncServerById(event.serverId);
});
eventBus.subscribe(ServerDeletedEvent, async (event) => {
logger.info({ serverId: event.serverId }, "Server deleted event");
wsService.broadcast("delete", "server", event.serverId);
await operatorResourceSync.deleteServer(event.serverId);
});