import * as plugins from '../plugins.js'; /** * a deployment happens when a service is deployed * tracks the status of a deployment */ export interface IDeployment { id: string; /** * The service being deployed (single service per deployment) */ serviceId: string; /** * The node this deployment is running on */ nodeId: string; /** * Docker container ID for this deployment */ containerId?: string; /** * Image used for this deployment */ usedImageId: string; /** * Version of the service deployed */ version: string; /** * Timestamp when deployed */ deployedAt: number; /** * Deployment log entries */ deploymentLog: string[]; /** * Current status of the deployment */ status: 'scheduled' | 'starting' | 'running' | 'stopping' | 'stopped' | 'failed'; /** * Health status of the deployment */ healthStatus?: 'healthy' | 'unhealthy' | 'unknown'; /** * Resource usage for this deployment */ resourceUsage?: { cpuUsagePercent: number; memoryUsedMB: number; lastUpdated: number; }; }