@omnitron-dev/omnitron 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +35 -0
- package/dist/cli/omnitron.d.ts +9 -0
- package/dist/cli/omnitron.d.ts.map +1 -0
- package/dist/cli/omnitron.js +768 -0
- package/dist/cli/omnitron.js.map +1 -0
- package/dist/cluster/cluster.rpc-service.d.ts +48 -0
- package/dist/cluster/cluster.rpc-service.d.ts.map +1 -0
- package/dist/cluster/cluster.rpc-service.js +105 -0
- package/dist/cluster/cluster.rpc-service.js.map +1 -0
- package/dist/cluster/config-sync.d.ts +89 -0
- package/dist/cluster/config-sync.d.ts.map +1 -0
- package/dist/cluster/config-sync.js +162 -0
- package/dist/cluster/config-sync.js.map +1 -0
- package/dist/cluster/index.d.ts +9 -0
- package/dist/cluster/index.d.ts.map +1 -0
- package/dist/cluster/index.js +7 -0
- package/dist/cluster/index.js.map +1 -0
- package/dist/cluster/leader-election.d.ts +145 -0
- package/dist/cluster/leader-election.d.ts.map +1 -0
- package/dist/cluster/leader-election.js +410 -0
- package/dist/cluster/leader-election.js.map +1 -0
- package/dist/cluster/slave-connector.d.ts +104 -0
- package/dist/cluster/slave-connector.d.ts.map +1 -0
- package/dist/cluster/slave-connector.js +316 -0
- package/dist/cluster/slave-connector.js.map +1 -0
- package/dist/commands/backup.d.ts +9 -0
- package/dist/commands/backup.d.ts.map +1 -0
- package/dist/commands/backup.js +81 -0
- package/dist/commands/backup.js.map +1 -0
- package/dist/commands/cluster.d.ts +9 -0
- package/dist/commands/cluster.d.ts.map +1 -0
- package/dist/commands/cluster.js +148 -0
- package/dist/commands/cluster.js.map +1 -0
- package/dist/commands/daemon-cmd.d.ts +11 -0
- package/dist/commands/daemon-cmd.d.ts.map +1 -0
- package/dist/commands/daemon-cmd.js +182 -0
- package/dist/commands/daemon-cmd.js.map +1 -0
- package/dist/commands/deploy.d.ts +17 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +110 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +23 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +76 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/discover.d.ts +9 -0
- package/dist/commands/discover.d.ts.map +1 -0
- package/dist/commands/discover.js +124 -0
- package/dist/commands/discover.js.map +1 -0
- package/dist/commands/env.d.ts +5 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +30 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/exec.d.ts +5 -0
- package/dist/commands/exec.d.ts.map +1 -0
- package/dist/commands/exec.js +36 -0
- package/dist/commands/exec.js.map +1 -0
- package/dist/commands/fleet.d.ts +9 -0
- package/dist/commands/fleet.d.ts.map +1 -0
- package/dist/commands/fleet.js +136 -0
- package/dist/commands/fleet.js.map +1 -0
- package/dist/commands/health-check.d.ts +12 -0
- package/dist/commands/health-check.d.ts.map +1 -0
- package/dist/commands/health-check.js +91 -0
- package/dist/commands/health-check.js.map +1 -0
- package/dist/commands/health.d.ts +7 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +44 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/infra.d.ts +32 -0
- package/dist/commands/infra.d.ts.map +1 -0
- package/dist/commands/infra.js +179 -0
- package/dist/commands/infra.js.map +1 -0
- package/dist/commands/init.d.ts +5 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +78 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/inspect.d.ts +7 -0
- package/dist/commands/inspect.d.ts.map +1 -0
- package/dist/commands/inspect.js +95 -0
- package/dist/commands/inspect.js.map +1 -0
- package/dist/commands/k8s.d.ts +7 -0
- package/dist/commands/k8s.d.ts.map +1 -0
- package/dist/commands/k8s.js +74 -0
- package/dist/commands/k8s.js.map +1 -0
- package/dist/commands/kb.d.ts +21 -0
- package/dist/commands/kb.d.ts.map +1 -0
- package/dist/commands/kb.js +137 -0
- package/dist/commands/kb.js.map +1 -0
- package/dist/commands/list.d.ts +7 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +77 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/logs.d.ts +17 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +287 -0
- package/dist/commands/logs.js.map +1 -0
- package/dist/commands/metrics.d.ts +7 -0
- package/dist/commands/metrics.d.ts.map +1 -0
- package/dist/commands/metrics.js +64 -0
- package/dist/commands/metrics.js.map +1 -0
- package/dist/commands/monit.d.ts +7 -0
- package/dist/commands/monit.d.ts.map +1 -0
- package/dist/commands/monit.js +90 -0
- package/dist/commands/monit.js.map +1 -0
- package/dist/commands/node.d.ts +33 -0
- package/dist/commands/node.d.ts.map +1 -0
- package/dist/commands/node.js +169 -0
- package/dist/commands/node.js.map +1 -0
- package/dist/commands/pipeline.d.ts +9 -0
- package/dist/commands/pipeline.d.ts.map +1 -0
- package/dist/commands/pipeline.js +89 -0
- package/dist/commands/pipeline.js.map +1 -0
- package/dist/commands/project.d.ts +11 -0
- package/dist/commands/project.d.ts.map +1 -0
- package/dist/commands/project.js +54 -0
- package/dist/commands/project.js.map +1 -0
- package/dist/commands/reload.d.ts +5 -0
- package/dist/commands/reload.d.ts.map +1 -0
- package/dist/commands/reload.js +31 -0
- package/dist/commands/reload.js.map +1 -0
- package/dist/commands/remote.d.ts +13 -0
- package/dist/commands/remote.d.ts.map +1 -0
- package/dist/commands/remote.js +88 -0
- package/dist/commands/remote.js.map +1 -0
- package/dist/commands/restart.d.ts +5 -0
- package/dist/commands/restart.d.ts.map +1 -0
- package/dist/commands/restart.js +31 -0
- package/dist/commands/restart.js.map +1 -0
- package/dist/commands/scale.d.ts +5 -0
- package/dist/commands/scale.d.ts.map +1 -0
- package/dist/commands/scale.js +29 -0
- package/dist/commands/scale.js.map +1 -0
- package/dist/commands/secret.d.ts +14 -0
- package/dist/commands/secret.d.ts.map +1 -0
- package/dist/commands/secret.js +148 -0
- package/dist/commands/secret.js.map +1 -0
- package/dist/commands/stack.d.ts +18 -0
- package/dist/commands/stack.d.ts.map +1 -0
- package/dist/commands/stack.js +252 -0
- package/dist/commands/stack.js.map +1 -0
- package/dist/commands/start.d.ts +7 -0
- package/dist/commands/start.d.ts.map +1 -0
- package/dist/commands/start.js +43 -0
- package/dist/commands/start.js.map +1 -0
- package/dist/commands/status.d.ts +9 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +70 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/stop.d.ts +10 -0
- package/dist/commands/stop.d.ts.map +1 -0
- package/dist/commands/stop.js +69 -0
- package/dist/commands/stop.js.map +1 -0
- package/dist/commands/up.d.ts +47 -0
- package/dist/commands/up.d.ts.map +1 -0
- package/dist/commands/up.js +278 -0
- package/dist/commands/up.js.map +1 -0
- package/dist/commands/webapp.d.ts +17 -0
- package/dist/commands/webapp.d.ts.map +1 -0
- package/dist/commands/webapp.js +103 -0
- package/dist/commands/webapp.js.map +1 -0
- package/dist/config/defaults.d.ts +22 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +76 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/define-app.d.ts +6 -0
- package/dist/config/define-app.d.ts.map +1 -0
- package/dist/config/define-app.js +38 -0
- package/dist/config/define-app.js.map +1 -0
- package/dist/config/define-ecosystem.d.ts +6 -0
- package/dist/config/define-ecosystem.d.ts.map +1 -0
- package/dist/config/define-ecosystem.js +21 -0
- package/dist/config/define-ecosystem.js.map +1 -0
- package/dist/config/define-system.d.ts +9 -0
- package/dist/config/define-system.d.ts.map +1 -0
- package/dist/config/define-system.js +106 -0
- package/dist/config/define-system.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +6 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/loader.d.ts +11 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +68 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/omnitron-config.schema.d.ts +14 -0
- package/dist/config/omnitron-config.schema.d.ts.map +1 -0
- package/dist/config/omnitron-config.schema.js +35 -0
- package/dist/config/omnitron-config.schema.js.map +1 -0
- package/dist/config/types.d.ts +807 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +7 -0
- package/dist/config/types.js.map +1 -0
- package/dist/daemon/daemon-client.d.ts +147 -0
- package/dist/daemon/daemon-client.d.ts.map +1 -0
- package/dist/daemon/daemon-client.js +256 -0
- package/dist/daemon/daemon-client.js.map +1 -0
- package/dist/daemon/daemon-entry.d.ts +9 -0
- package/dist/daemon/daemon-entry.d.ts.map +1 -0
- package/dist/daemon/daemon-entry.js +62 -0
- package/dist/daemon/daemon-entry.js.map +1 -0
- package/dist/daemon/daemon-scheduler.d.ts +32 -0
- package/dist/daemon/daemon-scheduler.d.ts.map +1 -0
- package/dist/daemon/daemon-scheduler.js +93 -0
- package/dist/daemon/daemon-scheduler.js.map +1 -0
- package/dist/daemon/daemon.d.ts +115 -0
- package/dist/daemon/daemon.d.ts.map +1 -0
- package/dist/daemon/daemon.js +1202 -0
- package/dist/daemon/daemon.js.map +1 -0
- package/dist/daemon/daemon.module.d.ts +50 -0
- package/dist/daemon/daemon.module.d.ts.map +1 -0
- package/dist/daemon/daemon.module.js +506 -0
- package/dist/daemon/daemon.module.js.map +1 -0
- package/dist/daemon/daemon.rpc-service.d.ts +122 -0
- package/dist/daemon/daemon.rpc-service.d.ts.map +1 -0
- package/dist/daemon/daemon.rpc-service.js +452 -0
- package/dist/daemon/daemon.rpc-service.js.map +1 -0
- package/dist/daemon/pid-manager.d.ts +43 -0
- package/dist/daemon/pid-manager.d.ts.map +1 -0
- package/dist/daemon/pid-manager.js +103 -0
- package/dist/daemon/pid-manager.js.map +1 -0
- package/dist/daemon/state-store.d.ts +26 -0
- package/dist/daemon/state-store.d.ts.map +1 -0
- package/dist/daemon/state-store.js +34 -0
- package/dist/daemon/state-store.js.map +1 -0
- package/dist/database/index.d.ts +10 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +10 -0
- package/dist/database/index.js.map +1 -0
- package/dist/database/migrate.d.ts +11 -0
- package/dist/database/migrate.d.ts.map +1 -0
- package/dist/database/migrate.js +62 -0
- package/dist/database/migrate.js.map +1 -0
- package/dist/database/migrations/001_initial_schema.d.ts +12 -0
- package/dist/database/migrations/001_initial_schema.d.ts.map +1 -0
- package/dist/database/migrations/001_initial_schema.js +246 -0
- package/dist/database/migrations/001_initial_schema.js.map +1 -0
- package/dist/database/migrations/002_metrics_raw.d.ts +17 -0
- package/dist/database/migrations/002_metrics_raw.d.ts.map +1 -0
- package/dist/database/migrations/002_metrics_raw.js +44 -0
- package/dist/database/migrations/002_metrics_raw.js.map +1 -0
- package/dist/database/migrations/003_pipelines_traces.d.ts +14 -0
- package/dist/database/migrations/003_pipelines_traces.d.ts.map +1 -0
- package/dist/database/migrations/003_pipelines_traces.js +108 -0
- package/dist/database/migrations/003_pipelines_traces.js.map +1 -0
- package/dist/database/migrations/004_sync_buffer.d.ts +17 -0
- package/dist/database/migrations/004_sync_buffer.d.ts.map +1 -0
- package/dist/database/migrations/004_sync_buffer.js +59 -0
- package/dist/database/migrations/004_sync_buffer.js.map +1 -0
- package/dist/database/migrations/005_node_health_checks.d.ts +11 -0
- package/dist/database/migrations/005_node_health_checks.d.ts.map +1 -0
- package/dist/database/migrations/005_node_health_checks.js +71 -0
- package/dist/database/migrations/005_node_health_checks.js.map +1 -0
- package/dist/database/schema.d.ts +217 -0
- package/dist/database/schema.d.ts.map +1 -0
- package/dist/database/schema.js +9 -0
- package/dist/database/schema.js.map +1 -0
- package/dist/execution/execution.service.d.ts +72 -0
- package/dist/execution/execution.service.d.ts.map +1 -0
- package/dist/execution/execution.service.js +191 -0
- package/dist/execution/execution.service.js.map +1 -0
- package/dist/execution/index.d.ts +3 -0
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +2 -0
- package/dist/execution/index.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/config-normalizer.d.ts +13 -0
- package/dist/infrastructure/config-normalizer.d.ts.map +1 -0
- package/dist/infrastructure/config-normalizer.js +84 -0
- package/dist/infrastructure/config-normalizer.js.map +1 -0
- package/dist/infrastructure/container-runtime.d.ts +63 -0
- package/dist/infrastructure/container-runtime.d.ts.map +1 -0
- package/dist/infrastructure/container-runtime.js +304 -0
- package/dist/infrastructure/container-runtime.js.map +1 -0
- package/dist/infrastructure/gateway-generator.d.ts +63 -0
- package/dist/infrastructure/gateway-generator.d.ts.map +1 -0
- package/dist/infrastructure/gateway-generator.js +253 -0
- package/dist/infrastructure/gateway-generator.js.map +1 -0
- package/dist/infrastructure/index.d.ts +5 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +5 -0
- package/dist/infrastructure/index.js.map +1 -0
- package/dist/infrastructure/infrastructure-gate.d.ts +48 -0
- package/dist/infrastructure/infrastructure-gate.d.ts.map +1 -0
- package/dist/infrastructure/infrastructure-gate.js +92 -0
- package/dist/infrastructure/infrastructure-gate.js.map +1 -0
- package/dist/infrastructure/infrastructure.service.d.ts +84 -0
- package/dist/infrastructure/infrastructure.service.d.ts.map +1 -0
- package/dist/infrastructure/infrastructure.service.js +502 -0
- package/dist/infrastructure/infrastructure.service.js.map +1 -0
- package/dist/infrastructure/presets/gateway-openresty.d.ts +10 -0
- package/dist/infrastructure/presets/gateway-openresty.d.ts.map +1 -0
- package/dist/infrastructure/presets/gateway-openresty.js +30 -0
- package/dist/infrastructure/presets/gateway-openresty.js.map +1 -0
- package/dist/infrastructure/presets/index.d.ts +14 -0
- package/dist/infrastructure/presets/index.d.ts.map +1 -0
- package/dist/infrastructure/presets/index.js +24 -0
- package/dist/infrastructure/presets/index.js.map +1 -0
- package/dist/infrastructure/presets/minio.d.ts +10 -0
- package/dist/infrastructure/presets/minio.d.ts.map +1 -0
- package/dist/infrastructure/presets/minio.js +60 -0
- package/dist/infrastructure/presets/minio.js.map +1 -0
- package/dist/infrastructure/presets/postgres.d.ts +9 -0
- package/dist/infrastructure/presets/postgres.d.ts.map +1 -0
- package/dist/infrastructure/presets/postgres.js +80 -0
- package/dist/infrastructure/presets/postgres.js.map +1 -0
- package/dist/infrastructure/presets/redis.d.ts +9 -0
- package/dist/infrastructure/presets/redis.d.ts.map +1 -0
- package/dist/infrastructure/presets/redis.js +32 -0
- package/dist/infrastructure/presets/redis.js.map +1 -0
- package/dist/infrastructure/presets/registry.d.ts +21 -0
- package/dist/infrastructure/presets/registry.d.ts.map +1 -0
- package/dist/infrastructure/presets/registry.js +87 -0
- package/dist/infrastructure/presets/registry.js.map +1 -0
- package/dist/infrastructure/presets/types.d.ts +88 -0
- package/dist/infrastructure/presets/types.d.ts.map +1 -0
- package/dist/infrastructure/presets/types.js +14 -0
- package/dist/infrastructure/presets/types.js.map +1 -0
- package/dist/infrastructure/runtime/types.d.ts +35 -0
- package/dist/infrastructure/runtime/types.d.ts.map +1 -0
- package/dist/infrastructure/runtime/types.js +9 -0
- package/dist/infrastructure/runtime/types.js.map +1 -0
- package/dist/infrastructure/server-registry.d.ts +16 -0
- package/dist/infrastructure/server-registry.d.ts.map +1 -0
- package/dist/infrastructure/server-registry.js +45 -0
- package/dist/infrastructure/server-registry.js.map +1 -0
- package/dist/infrastructure/service-resolver.d.ts +93 -0
- package/dist/infrastructure/service-resolver.d.ts.map +1 -0
- package/dist/infrastructure/service-resolver.js +419 -0
- package/dist/infrastructure/service-resolver.js.map +1 -0
- package/dist/infrastructure/stack-infra-manager.d.ts +81 -0
- package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -0
- package/dist/infrastructure/stack-infra-manager.js +309 -0
- package/dist/infrastructure/stack-infra-manager.js.map +1 -0
- package/dist/infrastructure/types.d.ts +413 -0
- package/dist/infrastructure/types.d.ts.map +1 -0
- package/dist/infrastructure/types.js +10 -0
- package/dist/infrastructure/types.js.map +1 -0
- package/dist/mcp/mcp-bridge.d.ts +21 -0
- package/dist/mcp/mcp-bridge.d.ts.map +1 -0
- package/dist/mcp/mcp-bridge.js +126 -0
- package/dist/mcp/mcp-bridge.js.map +1 -0
- package/dist/mcp/tool-groups/apps.tools.d.ts +7 -0
- package/dist/mcp/tool-groups/apps.tools.d.ts.map +1 -0
- package/dist/mcp/tool-groups/apps.tools.js +104 -0
- package/dist/mcp/tool-groups/apps.tools.js.map +1 -0
- package/dist/mcp/tool-groups/infra.tools.d.ts +7 -0
- package/dist/mcp/tool-groups/infra.tools.d.ts.map +1 -0
- package/dist/mcp/tool-groups/infra.tools.js +80 -0
- package/dist/mcp/tool-groups/infra.tools.js.map +1 -0
- package/dist/mcp/tool-groups/kb.tools.d.ts +7 -0
- package/dist/mcp/tool-groups/kb.tools.d.ts.map +1 -0
- package/dist/mcp/tool-groups/kb.tools.js +147 -0
- package/dist/mcp/tool-groups/kb.tools.js.map +1 -0
- package/dist/mcp/tool-groups/management.tools.d.ts +7 -0
- package/dist/mcp/tool-groups/management.tools.d.ts.map +1 -0
- package/dist/mcp/tool-groups/management.tools.js +263 -0
- package/dist/mcp/tool-groups/management.tools.js.map +1 -0
- package/dist/mcp/tool-groups/monitoring.tools.d.ts +6 -0
- package/dist/mcp/tool-groups/monitoring.tools.d.ts.map +1 -0
- package/dist/mcp/tool-groups/monitoring.tools.js +52 -0
- package/dist/mcp/tool-groups/monitoring.tools.js.map +1 -0
- package/dist/mcp/types.d.ts +23 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +2 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/monitoring/app-health.indicator.d.ts +16 -0
- package/dist/monitoring/app-health.indicator.d.ts.map +1 -0
- package/dist/monitoring/app-health.indicator.js +45 -0
- package/dist/monitoring/app-health.indicator.js.map +1 -0
- package/dist/monitoring/docker-health.indicator.d.ts +19 -0
- package/dist/monitoring/docker-health.indicator.d.ts.map +1 -0
- package/dist/monitoring/docker-health.indicator.js +52 -0
- package/dist/monitoring/docker-health.indicator.js.map +1 -0
- package/dist/monitoring/health.service.d.ts +14 -0
- package/dist/monitoring/health.service.d.ts.map +1 -0
- package/dist/monitoring/health.service.js +50 -0
- package/dist/monitoring/health.service.js.map +1 -0
- package/dist/monitoring/log-manager.d.ts +88 -0
- package/dist/monitoring/log-manager.d.ts.map +1 -0
- package/dist/monitoring/log-manager.js +353 -0
- package/dist/monitoring/log-manager.js.map +1 -0
- package/dist/monitoring/metrics.service.d.ts +14 -0
- package/dist/monitoring/metrics.service.d.ts.map +1 -0
- package/dist/monitoring/metrics.service.js +40 -0
- package/dist/monitoring/metrics.service.js.map +1 -0
- package/dist/orchestrator/app-handle.d.ts +51 -0
- package/dist/orchestrator/app-handle.d.ts.map +1 -0
- package/dist/orchestrator/app-handle.js +90 -0
- package/dist/orchestrator/app-handle.js.map +1 -0
- package/dist/orchestrator/bootstrap-loader.d.ts +36 -0
- package/dist/orchestrator/bootstrap-loader.d.ts.map +1 -0
- package/dist/orchestrator/bootstrap-loader.js +118 -0
- package/dist/orchestrator/bootstrap-loader.js.map +1 -0
- package/dist/orchestrator/bootstrap-process.d.ts +73 -0
- package/dist/orchestrator/bootstrap-process.d.ts.map +1 -0
- package/dist/orchestrator/bootstrap-process.js +342 -0
- package/dist/orchestrator/bootstrap-process.js.map +1 -0
- package/dist/orchestrator/bootstrap-runner.d.ts +15 -0
- package/dist/orchestrator/bootstrap-runner.d.ts.map +1 -0
- package/dist/orchestrator/bootstrap-runner.js +152 -0
- package/dist/orchestrator/bootstrap-runner.js.map +1 -0
- package/dist/orchestrator/build-service.d.ts +70 -0
- package/dist/orchestrator/build-service.d.ts.map +1 -0
- package/dist/orchestrator/build-service.js +313 -0
- package/dist/orchestrator/build-service.js.map +1 -0
- package/dist/orchestrator/classic-launcher.d.ts +17 -0
- package/dist/orchestrator/classic-launcher.d.ts.map +1 -0
- package/dist/orchestrator/classic-launcher.js +111 -0
- package/dist/orchestrator/classic-launcher.js.map +1 -0
- package/dist/orchestrator/dependency-resolver.d.ts +14 -0
- package/dist/orchestrator/dependency-resolver.d.ts.map +1 -0
- package/dist/orchestrator/dependency-resolver.js +56 -0
- package/dist/orchestrator/dependency-resolver.js.map +1 -0
- package/dist/orchestrator/file-watcher.d.ts +53 -0
- package/dist/orchestrator/file-watcher.d.ts.map +1 -0
- package/dist/orchestrator/file-watcher.js +307 -0
- package/dist/orchestrator/file-watcher.js.map +1 -0
- package/dist/orchestrator/module-worker-process.d.ts +37 -0
- package/dist/orchestrator/module-worker-process.d.ts.map +1 -0
- package/dist/orchestrator/module-worker-process.js +187 -0
- package/dist/orchestrator/module-worker-process.js.map +1 -0
- package/dist/orchestrator/orchestrator.service.d.ts +170 -0
- package/dist/orchestrator/orchestrator.service.d.ts.map +1 -0
- package/dist/orchestrator/orchestrator.service.js +1146 -0
- package/dist/orchestrator/orchestrator.service.js.map +1 -0
- package/dist/orchestrator/service-router.d.ts +78 -0
- package/dist/orchestrator/service-router.d.ts.map +1 -0
- package/dist/orchestrator/service-router.js +148 -0
- package/dist/orchestrator/service-router.js.map +1 -0
- package/dist/orchestrator/topology-proxy.d.ts +65 -0
- package/dist/orchestrator/topology-proxy.d.ts.map +1 -0
- package/dist/orchestrator/topology-proxy.js +209 -0
- package/dist/orchestrator/topology-proxy.js.map +1 -0
- package/dist/orchestrator/topology-relay.d.ts +111 -0
- package/dist/orchestrator/topology-relay.d.ts.map +1 -0
- package/dist/orchestrator/topology-relay.js +255 -0
- package/dist/orchestrator/topology-relay.js.map +1 -0
- package/dist/orchestrator/ts-compiler.d.ts +55 -0
- package/dist/orchestrator/ts-compiler.d.ts.map +1 -0
- package/dist/orchestrator/ts-compiler.js +166 -0
- package/dist/orchestrator/ts-compiler.js.map +1 -0
- package/dist/project/artifact-builder.d.ts +63 -0
- package/dist/project/artifact-builder.d.ts.map +1 -0
- package/dist/project/artifact-builder.js +193 -0
- package/dist/project/artifact-builder.js.map +1 -0
- package/dist/project/config-resolver.d.ts +110 -0
- package/dist/project/config-resolver.d.ts.map +1 -0
- package/dist/project/config-resolver.js +563 -0
- package/dist/project/config-resolver.js.map +1 -0
- package/dist/project/dependency-analyzer.d.ts +53 -0
- package/dist/project/dependency-analyzer.d.ts.map +1 -0
- package/dist/project/dependency-analyzer.js +135 -0
- package/dist/project/dependency-analyzer.js.map +1 -0
- package/dist/project/index.d.ts +10 -0
- package/dist/project/index.d.ts.map +1 -0
- package/dist/project/index.js +6 -0
- package/dist/project/index.js.map +1 -0
- package/dist/project/registry.d.ts +28 -0
- package/dist/project/registry.d.ts.map +1 -0
- package/dist/project/registry.js +117 -0
- package/dist/project/registry.js.map +1 -0
- package/dist/project/requirements-scanner.d.ts +65 -0
- package/dist/project/requirements-scanner.d.ts.map +1 -0
- package/dist/project/requirements-scanner.js +217 -0
- package/dist/project/requirements-scanner.js.map +1 -0
- package/dist/services/alert.rpc-service.d.ts +41 -0
- package/dist/services/alert.rpc-service.d.ts.map +1 -0
- package/dist/services/alert.rpc-service.js +102 -0
- package/dist/services/alert.rpc-service.js.map +1 -0
- package/dist/services/alert.service.d.ts +83 -0
- package/dist/services/alert.service.d.ts.map +1 -0
- package/dist/services/alert.service.js +277 -0
- package/dist/services/alert.service.js.map +1 -0
- package/dist/services/auth-context.d.ts +39 -0
- package/dist/services/auth-context.d.ts.map +1 -0
- package/dist/services/auth-context.js +66 -0
- package/dist/services/auth-context.js.map +1 -0
- package/dist/services/auth-middleware.d.ts +47 -0
- package/dist/services/auth-middleware.d.ts.map +1 -0
- package/dist/services/auth-middleware.js +158 -0
- package/dist/services/auth-middleware.js.map +1 -0
- package/dist/services/auth.rpc-service.d.ts +61 -0
- package/dist/services/auth.rpc-service.d.ts.map +1 -0
- package/dist/services/auth.rpc-service.js +131 -0
- package/dist/services/auth.rpc-service.js.map +1 -0
- package/dist/services/auth.service.d.ts +70 -0
- package/dist/services/auth.service.d.ts.map +1 -0
- package/dist/services/auth.service.js +310 -0
- package/dist/services/auth.service.js.map +1 -0
- package/dist/services/backup.rpc-service.d.ts +37 -0
- package/dist/services/backup.rpc-service.d.ts.map +1 -0
- package/dist/services/backup.rpc-service.js +85 -0
- package/dist/services/backup.rpc-service.js.map +1 -0
- package/dist/services/backup.service.d.ts +45 -0
- package/dist/services/backup.service.d.ts.map +1 -0
- package/dist/services/backup.service.js +299 -0
- package/dist/services/backup.service.js.map +1 -0
- package/dist/services/deploy.rpc-service.d.ts +26 -0
- package/dist/services/deploy.rpc-service.d.ts.map +1 -0
- package/dist/services/deploy.rpc-service.js +61 -0
- package/dist/services/deploy.rpc-service.js.map +1 -0
- package/dist/services/deploy.service.d.ts +85 -0
- package/dist/services/deploy.service.d.ts.map +1 -0
- package/dist/services/deploy.service.js +269 -0
- package/dist/services/deploy.service.js.map +1 -0
- package/dist/services/discovery.rpc-service.d.ts +16 -0
- package/dist/services/discovery.rpc-service.d.ts.map +1 -0
- package/dist/services/discovery.rpc-service.js +55 -0
- package/dist/services/discovery.rpc-service.js.map +1 -0
- package/dist/services/discovery.service.d.ts +43 -0
- package/dist/services/discovery.service.d.ts.map +1 -0
- package/dist/services/discovery.service.js +178 -0
- package/dist/services/discovery.service.js.map +1 -0
- package/dist/services/environment.rpc-service.d.ts +22 -0
- package/dist/services/environment.rpc-service.d.ts.map +1 -0
- package/dist/services/environment.rpc-service.js +65 -0
- package/dist/services/environment.rpc-service.js.map +1 -0
- package/dist/services/environment.service.d.ts +87 -0
- package/dist/services/environment.service.d.ts.map +1 -0
- package/dist/services/environment.service.js +220 -0
- package/dist/services/environment.service.js.map +1 -0
- package/dist/services/event-broadcaster.rpc-service.d.ts +44 -0
- package/dist/services/event-broadcaster.rpc-service.d.ts.map +1 -0
- package/dist/services/event-broadcaster.rpc-service.js +84 -0
- package/dist/services/event-broadcaster.rpc-service.js.map +1 -0
- package/dist/services/event-broadcaster.service.d.ts +42 -0
- package/dist/services/event-broadcaster.service.d.ts.map +1 -0
- package/dist/services/event-broadcaster.service.js +87 -0
- package/dist/services/event-broadcaster.service.js.map +1 -0
- package/dist/services/fleet.rpc-service.d.ts +37 -0
- package/dist/services/fleet.rpc-service.d.ts.map +1 -0
- package/dist/services/fleet.rpc-service.js +104 -0
- package/dist/services/fleet.rpc-service.js.map +1 -0
- package/dist/services/fleet.service.d.ts +104 -0
- package/dist/services/fleet.service.d.ts.map +1 -0
- package/dist/services/fleet.service.js +243 -0
- package/dist/services/fleet.service.js.map +1 -0
- package/dist/services/health-check.rpc-service.d.ts +18 -0
- package/dist/services/health-check.rpc-service.d.ts.map +1 -0
- package/dist/services/health-check.rpc-service.js +64 -0
- package/dist/services/health-check.rpc-service.js.map +1 -0
- package/dist/services/health-check.service.d.ts +53 -0
- package/dist/services/health-check.service.d.ts.map +1 -0
- package/dist/services/health-check.service.js +232 -0
- package/dist/services/health-check.service.js.map +1 -0
- package/dist/services/infrastructure.rpc-service.d.ts +18 -0
- package/dist/services/infrastructure.rpc-service.d.ts.map +1 -0
- package/dist/services/infrastructure.rpc-service.js +64 -0
- package/dist/services/infrastructure.rpc-service.js.map +1 -0
- package/dist/services/kubernetes.rpc-service.d.ts +54 -0
- package/dist/services/kubernetes.rpc-service.d.ts.map +1 -0
- package/dist/services/kubernetes.rpc-service.js +112 -0
- package/dist/services/kubernetes.rpc-service.js.map +1 -0
- package/dist/services/kubernetes.service.d.ts +71 -0
- package/dist/services/kubernetes.service.d.ts.map +1 -0
- package/dist/services/kubernetes.service.js +244 -0
- package/dist/services/kubernetes.service.js.map +1 -0
- package/dist/services/log-collector.rpc-service.d.ts +38 -0
- package/dist/services/log-collector.rpc-service.d.ts.map +1 -0
- package/dist/services/log-collector.rpc-service.js +74 -0
- package/dist/services/log-collector.rpc-service.js.map +1 -0
- package/dist/services/log-collector.service.d.ts +96 -0
- package/dist/services/log-collector.service.d.ts.map +1 -0
- package/dist/services/log-collector.service.js +303 -0
- package/dist/services/log-collector.service.js.map +1 -0
- package/dist/services/metrics-collector.service.d.ts +103 -0
- package/dist/services/metrics-collector.service.d.ts.map +1 -0
- package/dist/services/metrics-collector.service.js +235 -0
- package/dist/services/metrics-collector.service.js.map +1 -0
- package/dist/services/metrics.rpc-service.d.ts +41 -0
- package/dist/services/metrics.rpc-service.d.ts.map +1 -0
- package/dist/services/metrics.rpc-service.js +90 -0
- package/dist/services/metrics.rpc-service.js.map +1 -0
- package/dist/services/metrics.service.d.ts +72 -0
- package/dist/services/metrics.service.d.ts.map +1 -0
- package/dist/services/metrics.service.js +185 -0
- package/dist/services/metrics.service.js.map +1 -0
- package/dist/services/netron-telemetry-transport.d.ts +42 -0
- package/dist/services/netron-telemetry-transport.d.ts.map +1 -0
- package/dist/services/netron-telemetry-transport.js +97 -0
- package/dist/services/netron-telemetry-transport.js.map +1 -0
- package/dist/services/node-health.repository.d.ts +65 -0
- package/dist/services/node-health.repository.d.ts.map +1 -0
- package/dist/services/node-health.repository.js +132 -0
- package/dist/services/node-health.repository.js.map +1 -0
- package/dist/services/node-manager.rpc-service.d.ts +66 -0
- package/dist/services/node-manager.rpc-service.d.ts.map +1 -0
- package/dist/services/node-manager.rpc-service.js +229 -0
- package/dist/services/node-manager.rpc-service.js.map +1 -0
- package/dist/services/node-manager.service.d.ts +149 -0
- package/dist/services/node-manager.service.d.ts.map +1 -0
- package/dist/services/node-manager.service.js +547 -0
- package/dist/services/node-manager.service.js.map +1 -0
- package/dist/services/pipeline.rpc-service.d.ts +37 -0
- package/dist/services/pipeline.rpc-service.d.ts.map +1 -0
- package/dist/services/pipeline.rpc-service.js +102 -0
- package/dist/services/pipeline.rpc-service.js.map +1 -0
- package/dist/services/pipeline.service.d.ts +77 -0
- package/dist/services/pipeline.service.d.ts.map +1 -0
- package/dist/services/pipeline.service.js +278 -0
- package/dist/services/pipeline.service.js.map +1 -0
- package/dist/services/project.rpc-service.d.ts +73 -0
- package/dist/services/project.rpc-service.d.ts.map +1 -0
- package/dist/services/project.rpc-service.js +184 -0
- package/dist/services/project.rpc-service.js.map +1 -0
- package/dist/services/project.service.d.ts +123 -0
- package/dist/services/project.service.d.ts.map +1 -0
- package/dist/services/project.service.js +1112 -0
- package/dist/services/project.service.js.map +1 -0
- package/dist/services/remote-deployer.service.d.ts +85 -0
- package/dist/services/remote-deployer.service.d.ts.map +1 -0
- package/dist/services/remote-deployer.service.js +332 -0
- package/dist/services/remote-deployer.service.js.map +1 -0
- package/dist/services/remote-ops.service.d.ts +72 -0
- package/dist/services/remote-ops.service.d.ts.map +1 -0
- package/dist/services/remote-ops.service.js +132 -0
- package/dist/services/remote-ops.service.js.map +1 -0
- package/dist/services/secrets.rpc-service.d.ts +45 -0
- package/dist/services/secrets.rpc-service.d.ts.map +1 -0
- package/dist/services/secrets.rpc-service.js +81 -0
- package/dist/services/secrets.rpc-service.js.map +1 -0
- package/dist/services/secrets.service.d.ts +57 -0
- package/dist/services/secrets.service.d.ts.map +1 -0
- package/dist/services/secrets.service.js +211 -0
- package/dist/services/secrets.service.js.map +1 -0
- package/dist/services/slave-storage.service.d.ts +69 -0
- package/dist/services/slave-storage.service.d.ts.map +1 -0
- package/dist/services/slave-storage.service.js +131 -0
- package/dist/services/slave-storage.service.js.map +1 -0
- package/dist/services/sync.rpc-service.d.ts +37 -0
- package/dist/services/sync.rpc-service.d.ts.map +1 -0
- package/dist/services/sync.rpc-service.js +72 -0
- package/dist/services/sync.rpc-service.js.map +1 -0
- package/dist/services/sync.service.d.ts +121 -0
- package/dist/services/sync.service.d.ts.map +1 -0
- package/dist/services/sync.service.js +440 -0
- package/dist/services/sync.service.js.map +1 -0
- package/dist/services/system-info.rpc-service.d.ts +12 -0
- package/dist/services/system-info.rpc-service.d.ts.map +1 -0
- package/dist/services/system-info.rpc-service.js +37 -0
- package/dist/services/system-info.rpc-service.js.map +1 -0
- package/dist/services/system-info.service.d.ts +89 -0
- package/dist/services/system-info.service.d.ts.map +1 -0
- package/dist/services/system-info.service.js +151 -0
- package/dist/services/system-info.service.js.map +1 -0
- package/dist/services/telemetry.rpc-service.d.ts +27 -0
- package/dist/services/telemetry.rpc-service.d.ts.map +1 -0
- package/dist/services/telemetry.rpc-service.js +56 -0
- package/dist/services/telemetry.rpc-service.js.map +1 -0
- package/dist/services/telemetry.service.d.ts +31 -0
- package/dist/services/telemetry.service.d.ts.map +1 -0
- package/dist/services/telemetry.service.js +134 -0
- package/dist/services/telemetry.service.js.map +1 -0
- package/dist/services/trace-collector.rpc-service.d.ts +24 -0
- package/dist/services/trace-collector.rpc-service.d.ts.map +1 -0
- package/dist/services/trace-collector.rpc-service.js +75 -0
- package/dist/services/trace-collector.rpc-service.js.map +1 -0
- package/dist/services/trace-collector.service.d.ts +76 -0
- package/dist/services/trace-collector.service.d.ts.map +1 -0
- package/dist/services/trace-collector.service.js +201 -0
- package/dist/services/trace-collector.service.js.map +1 -0
- package/dist/shared/dto/project.d.ts +156 -0
- package/dist/shared/dto/project.d.ts.map +1 -0
- package/dist/shared/dto/project.js +8 -0
- package/dist/shared/dto/project.js.map +1 -0
- package/dist/shared/dto/services.d.ts +254 -0
- package/dist/shared/dto/services.d.ts.map +1 -0
- package/dist/shared/dto/services.js +7 -0
- package/dist/shared/dto/services.js.map +1 -0
- package/dist/shared/dto/types.d.ts +5 -0
- package/dist/shared/dto/types.d.ts.map +1 -0
- package/dist/shared/dto/types.js +5 -0
- package/dist/shared/dto/types.js.map +1 -0
- package/dist/shared/events.d.ts +215 -0
- package/dist/shared/events.d.ts.map +1 -0
- package/dist/shared/events.js +101 -0
- package/dist/shared/events.js.map +1 -0
- package/dist/shared/format.d.ts +18 -0
- package/dist/shared/format.d.ts.map +1 -0
- package/dist/shared/format.js +93 -0
- package/dist/shared/format.js.map +1 -0
- package/dist/shared/roles.d.ts +31 -0
- package/dist/shared/roles.d.ts.map +1 -0
- package/dist/shared/roles.js +39 -0
- package/dist/shared/roles.js.map +1 -0
- package/dist/shared/tokens.d.ts +70 -0
- package/dist/shared/tokens.d.ts.map +1 -0
- package/dist/shared/tokens.js +46 -0
- package/dist/shared/tokens.js.map +1 -0
- package/dist/shared/xec-loader.d.ts +17 -0
- package/dist/shared/xec-loader.d.ts.map +1 -0
- package/dist/shared/xec-loader.js +41 -0
- package/dist/shared/xec-loader.js.map +1 -0
- package/dist/supervisor/omnitron-supervisor.d.ts +21 -0
- package/dist/supervisor/omnitron-supervisor.d.ts.map +1 -0
- package/dist/supervisor/omnitron-supervisor.js +43 -0
- package/dist/supervisor/omnitron-supervisor.js.map +1 -0
- package/dist/supervisor/restart-policy.d.ts +11 -0
- package/dist/supervisor/restart-policy.d.ts.map +1 -0
- package/dist/supervisor/restart-policy.js +33 -0
- package/dist/supervisor/restart-policy.js.map +1 -0
- package/dist/webapp/static-server.d.ts +24 -0
- package/dist/webapp/static-server.d.ts.map +1 -0
- package/dist/webapp/static-server.js +152 -0
- package/dist/webapp/static-server.js.map +1 -0
- package/dist/webapp/webapp.service.d.ts +55 -0
- package/dist/webapp/webapp.service.d.ts.map +1 -0
- package/dist/webapp/webapp.service.js +233 -0
- package/dist/webapp/webapp.service.js.map +1 -0
- package/dist/workers/health-monitor-process.d.ts +41 -0
- package/dist/workers/health-monitor-process.d.ts.map +1 -0
- package/dist/workers/health-monitor-process.js +128 -0
- package/dist/workers/health-monitor-process.js.map +1 -0
- package/dist/workers/health-monitor.module.d.ts +11 -0
- package/dist/workers/health-monitor.module.d.ts.map +1 -0
- package/dist/workers/health-monitor.module.js +29 -0
- package/dist/workers/health-monitor.module.js.map +1 -0
- package/dist/workers/health-monitor.service.d.ts +55 -0
- package/dist/workers/health-monitor.service.d.ts.map +1 -0
- package/dist/workers/health-monitor.service.js +402 -0
- package/dist/workers/health-monitor.service.js.map +1 -0
- package/dist/workers/system-worker-manager.d.ts +47 -0
- package/dist/workers/system-worker-manager.d.ts.map +1 -0
- package/dist/workers/system-worker-manager.js +98 -0
- package/dist/workers/system-worker-manager.js.map +1 -0
- package/dist/workers/types.d.ts +80 -0
- package/dist/workers/types.d.ts.map +1 -0
- package/dist/workers/types.js +8 -0
- package/dist/workers/types.js.map +1 -0
- package/package.json +85 -0
- package/webapp/dist/assets/Chip-BySxTjyN.js +1 -0
- package/webapp/dist/assets/DialogContentText-YQWiAVrU.js +1 -0
- package/webapp/dist/assets/DialogTitle-CDkgUIwp.js +1 -0
- package/webapp/dist/assets/FormControlLabel-Bu3CCsBM.js +1 -0
- package/webapp/dist/assets/Grid-BFY8hAzL.js +1 -0
- package/webapp/dist/assets/InputAdornment-_Dayk-3y.js +3 -0
- package/webapp/dist/assets/Skeleton-BGj6Sw8m.js +37 -0
- package/webapp/dist/assets/Switch-CA6682vv.js +1 -0
- package/webapp/dist/assets/TableContainer-4epq10KJ.js +1 -0
- package/webapp/dist/assets/TextField-C73KHMVN.js +1 -0
- package/webapp/dist/assets/alerts-JEQALS7Y.js +1 -0
- package/webapp/dist/assets/apps-DMPysEKB.js +1 -0
- package/webapp/dist/assets/client-DlGPter5.js +110 -0
- package/webapp/dist/assets/constants-DqFQJ27U.js +1 -0
- package/webapp/dist/assets/containers-CvkC7do8.js +1 -0
- package/webapp/dist/assets/dashboard-C0Fre9pC.js +1 -0
- package/webapp/dist/assets/dashboard-builder-DAghqdpE.js +1 -0
- package/webapp/dist/assets/deployments-Cg1lI1uT.js +1 -0
- package/webapp/dist/assets/detail-CyFtEson.js +1 -0
- package/webapp/dist/assets/detail-DqoSGKT1.js +8 -0
- package/webapp/dist/assets/formatters-J3Xqn6BQ.js +1 -0
- package/webapp/dist/assets/fs-uP8eiZAR.js +1 -0
- package/webapp/dist/assets/icons-ynIWYfBP.js +3 -0
- package/webapp/dist/assets/index-CHVXOsTS.css +1 -0
- package/webapp/dist/assets/index-vKrDmEA_.js +259 -0
- package/webapp/dist/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-500-normal-BasfLYem.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-500-normal-CxZf_p3X.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-600-normal-4D_pXhcN.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-600-normal-CWCymEST.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-700-normal-CjBOestx.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-700-normal-DrXBdSj3.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2 +0 -0
- package/webapp/dist/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff +0 -0
- package/webapp/dist/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
- package/webapp/dist/assets/inter-greek-500-normal-BIZE56-Y.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-500-normal-Xzm54t5V.woff +0 -0
- package/webapp/dist/assets/inter-greek-600-normal-BZpKdvQh.woff +0 -0
- package/webapp/dist/assets/inter-greek-600-normal-plRanbMR.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-700-normal-BUv2fZ6O.woff +0 -0
- package/webapp/dist/assets/inter-greek-700-normal-C3JjAnD8.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
- package/webapp/dist/assets/inter-greek-ext-500-normal-2j5mBUwD.woff +0 -0
- package/webapp/dist/assets/inter-greek-ext-500-normal-C4iEst2y.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-ext-600-normal-B8X0CLgF.woff +0 -0
- package/webapp/dist/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2 +0 -0
- package/webapp/dist/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff +0 -0
- package/webapp/dist/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
- package/webapp/dist/assets/inter-latin-500-normal-BL9OpVg8.woff +0 -0
- package/webapp/dist/assets/inter-latin-500-normal-Cerq10X2.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-600-normal-CiBQ2DWP.woff +0 -0
- package/webapp/dist/assets/inter-latin-600-normal-LgqL8muc.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-700-normal-BLAVimhd.woff +0 -0
- package/webapp/dist/assets/inter-latin-700-normal-Yt3aPRUw.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
- package/webapp/dist/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-ext-500-normal-BxGbmqWO.woff +0 -0
- package/webapp/dist/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-ext-600-normal-CIVaiw4L.woff +0 -0
- package/webapp/dist/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2 +0 -0
- package/webapp/dist/assets/inter-latin-ext-700-normal-TidjK2hL.woff +0 -0
- package/webapp/dist/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
- package/webapp/dist/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
- package/webapp/dist/assets/inter-vietnamese-500-normal-DOriooB6.woff2 +0 -0
- package/webapp/dist/assets/inter-vietnamese-500-normal-mJboJaSs.woff +0 -0
- package/webapp/dist/assets/inter-vietnamese-600-normal-BuLX-rYi.woff +0 -0
- package/webapp/dist/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 +0 -0
- package/webapp/dist/assets/inter-vietnamese-700-normal-BZaoP0fm.woff +0 -0
- package/webapp/dist/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2 +0 -0
- package/webapp/dist/assets/isMuiElement-BRL3YuCT.js +1 -0
- package/webapp/dist/assets/logs-IovIij1C.js +11 -0
- package/webapp/dist/assets/metrics-Dufwtwjq.js +1 -0
- package/webapp/dist/assets/nodes-Brvu8W3j.js +7 -0
- package/webapp/dist/assets/pipelines-t40X4MuC.js +4 -0
- package/webapp/dist/assets/prop-types-CvVtHxp4.js +1 -0
- package/webapp/dist/assets/react-apexcharts.esm-CLO6gala.js +954 -0
- package/webapp/dist/assets/settings-DTAIST3v.js +1 -0
- package/webapp/dist/assets/sign-in-DQEAkJum.js +1 -0
- package/webapp/dist/assets/stacks-BjM1f45N.js +1 -0
- package/webapp/dist/assets/system-info-BQSbSEK-.js +1 -0
- package/webapp/dist/assets/topology-6N8-Az_Z.js +12 -0
- package/webapp/dist/assets/topology-CHpVij2M.css +1 -0
- package/webapp/dist/assets/traces-DVXyb-4m.js +1 -0
- package/webapp/dist/assets/use-stack-context-CbE8fxBA.js +1 -0
- package/webapp/dist/favicon.png +0 -0
- package/webapp/dist/index.html +19 -0
- package/webapp/dist/logo.svg +80 -0
|
@@ -0,0 +1,563 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Config Resolver — Generates per-app config from requirements + environment
|
|
3
|
+
*
|
|
4
|
+
* Pipeline:
|
|
5
|
+
* 1. Read app's `requires` from bootstrap.ts
|
|
6
|
+
* 2. Read active environment config from omnitron.config.ts
|
|
7
|
+
* 3. Resolve infrastructure addresses (local Docker vs remote vs cluster)
|
|
8
|
+
* 4. Allocate Redis DB indexes (avoid conflicts)
|
|
9
|
+
* 5. Generate IResolvedAppConfig per app
|
|
10
|
+
* 6. Inject into app via environment variables
|
|
11
|
+
*
|
|
12
|
+
* This replaces:
|
|
13
|
+
* - apps/main/config/default.json
|
|
14
|
+
* - apps/messaging/config/default.json
|
|
15
|
+
* - infra/.env.dev
|
|
16
|
+
* - Hardcoded localhost:5432 in every app
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Resolve addresses for all normalized services.
|
|
20
|
+
* Uses StackPortAllocation.servicePorts for port allocation.
|
|
21
|
+
* For local stacks: host = localhost, ports from allocation.
|
|
22
|
+
* For remote/cluster: host from stack nodes.
|
|
23
|
+
*/
|
|
24
|
+
export function resolveGenericServiceAddresses(normalizedServices, stackConfig, portAllocation) {
|
|
25
|
+
const addresses = {};
|
|
26
|
+
const host = stackConfig.type === 'local'
|
|
27
|
+
? 'localhost'
|
|
28
|
+
: stackConfig.nodes?.[0]?.host ?? 'localhost';
|
|
29
|
+
for (const [name, svc] of Object.entries(normalizedServices)) {
|
|
30
|
+
// Resolve ports: use stack port allocation if available, else service defaults
|
|
31
|
+
const allocatedPorts = portAllocation?.servicePorts[name];
|
|
32
|
+
const resolvedPorts = {};
|
|
33
|
+
for (const [portName, defaultPort] of Object.entries(svc.ports)) {
|
|
34
|
+
resolvedPorts[portName] = allocatedPorts?.[portName] ?? defaultPort;
|
|
35
|
+
}
|
|
36
|
+
// Resolve secrets
|
|
37
|
+
const secrets = {};
|
|
38
|
+
if (svc.secrets) {
|
|
39
|
+
for (const [k, v] of Object.entries(svc.secrets)) {
|
|
40
|
+
secrets[k] = typeof v === 'string' ? v : '';
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
addresses[name] = { host, ports: resolvedPorts, secrets };
|
|
44
|
+
}
|
|
45
|
+
return addresses;
|
|
46
|
+
}
|
|
47
|
+
// =============================================================================
|
|
48
|
+
// Resolver
|
|
49
|
+
// =============================================================================
|
|
50
|
+
/**
|
|
51
|
+
* Convert resolved config to standardized URL-based environment variables.
|
|
52
|
+
* Produces DATABASE_URL, REDIS_URL, S3_*, JWT_SECRET — no app-specific prefix.
|
|
53
|
+
*/
|
|
54
|
+
export function resolvedConfigToEnv(config, appName, stackName) {
|
|
55
|
+
const env = {};
|
|
56
|
+
env['APP_NAME'] = appName;
|
|
57
|
+
env['STACK_NAME'] = stackName;
|
|
58
|
+
if (config.database) {
|
|
59
|
+
const db = config.database;
|
|
60
|
+
const password = db.password ? `:${db.password}` : '';
|
|
61
|
+
env['DATABASE_URL'] = `${db.dialect ?? 'postgres'}://${db.user}${password}@${db.host}:${db.port}/${db.database}`;
|
|
62
|
+
}
|
|
63
|
+
if (config.redis) {
|
|
64
|
+
const r = config.redis;
|
|
65
|
+
const password = r.password ? `:${r.password}@` : '';
|
|
66
|
+
env['REDIS_URL'] = `redis://${password}${r.host}:${r.port}/${r.db}`;
|
|
67
|
+
}
|
|
68
|
+
if (config.s3) {
|
|
69
|
+
// Generic S3 vars (used by S3Adapter fallback)
|
|
70
|
+
env['S3_ENDPOINT'] = config.s3.endpoint;
|
|
71
|
+
env['S3_ACCESS_KEY'] = config.s3.accessKey;
|
|
72
|
+
env['S3_SECRET_KEY'] = config.s3.secretKey;
|
|
73
|
+
env['S3_BUCKET'] = config.s3.bucket;
|
|
74
|
+
// App-prefixed S3 vars for ConfigModule (STORAGE_ prefix, __ separator, camelCase)
|
|
75
|
+
// This ensures storage.s3.* config is available even when config/default.json is not loadable.
|
|
76
|
+
const prefix = appName.toUpperCase();
|
|
77
|
+
env[`${prefix}_STORAGE__BACKEND`] = 's3';
|
|
78
|
+
env[`${prefix}_STORAGE__S3__ENDPOINT`] = config.s3.endpoint;
|
|
79
|
+
env[`${prefix}_STORAGE__S3__ACCESS_KEY_ID`] = config.s3.accessKey;
|
|
80
|
+
env[`${prefix}_STORAGE__S3__SECRET_ACCESS_KEY`] = config.s3.secretKey;
|
|
81
|
+
env[`${prefix}_STORAGE__S3__BUCKET`] = config.s3.bucket;
|
|
82
|
+
env[`${prefix}_STORAGE__S3__FORCE_PATH_STYLE`] = 'true';
|
|
83
|
+
}
|
|
84
|
+
if (config.auth?.jwtSecret) {
|
|
85
|
+
env['JWT_SECRET'] = config.auth.jwtSecret;
|
|
86
|
+
}
|
|
87
|
+
// Titan service module Redis URLs
|
|
88
|
+
if (config['discoveryRedis']) {
|
|
89
|
+
const dr = config['discoveryRedis'];
|
|
90
|
+
const password = dr.password ? `:${dr.password}@` : '';
|
|
91
|
+
env['DISCOVERY_REDIS_URL'] = `redis://${password}${dr.host}:${dr.port}/${dr.db}`;
|
|
92
|
+
}
|
|
93
|
+
if (config['notificationsRedis']) {
|
|
94
|
+
const nr = config['notificationsRedis'];
|
|
95
|
+
const password = nr.password ? `:${nr.password}@` : '';
|
|
96
|
+
env['NOTIFICATIONS_REDIS_URL'] = `redis://${password}${nr.host}:${nr.port}/${nr.db}`;
|
|
97
|
+
}
|
|
98
|
+
if (config['priceverseRedis']) {
|
|
99
|
+
const pr = config['priceverseRedis'];
|
|
100
|
+
const password = pr.password ? `:${pr.password}@` : '';
|
|
101
|
+
env['PRICEVERSE_REDIS_URL'] = `redis://${password}${pr.host}:${pr.port}/${pr.db}`;
|
|
102
|
+
}
|
|
103
|
+
// Gateway Redis — main app writes maintenance state to gateway's dedicated Redis DB
|
|
104
|
+
if (config['gatewayRedis']) {
|
|
105
|
+
const gr = config['gatewayRedis'];
|
|
106
|
+
const password = gr.password ? `:${gr.password}@` : '';
|
|
107
|
+
env['GATEWAY_REDIS_URL'] = `redis://${password}${gr.host}:${gr.port}/${gr.db}`;
|
|
108
|
+
}
|
|
109
|
+
// Custom infrastructure service env vars (resolved from templates)
|
|
110
|
+
if (config['_customEnv']) {
|
|
111
|
+
Object.assign(env, config['_customEnv']);
|
|
112
|
+
}
|
|
113
|
+
return env;
|
|
114
|
+
}
|
|
115
|
+
// =============================================================================
|
|
116
|
+
// Secret Resolution
|
|
117
|
+
// =============================================================================
|
|
118
|
+
function resolveServiceSecrets(secrets) {
|
|
119
|
+
const resolved = {};
|
|
120
|
+
for (const [key, value] of Object.entries(secrets)) {
|
|
121
|
+
if (typeof value === 'string') {
|
|
122
|
+
resolved[key] = value;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// SecretRef — resolved asynchronously via resolveServiceSecretsAsync.
|
|
126
|
+
// In synchronous context, use placeholder (will be resolved later by resolveSecretRefs).
|
|
127
|
+
resolved[key] = `<secret:${value.secret}>`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return resolved;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Resolve service secrets asynchronously using the SecretsService.
|
|
134
|
+
* Resolves `{ secret: 'key' }` references to actual values from the encrypted store.
|
|
135
|
+
*/
|
|
136
|
+
export async function resolveServiceSecretsAsync(secrets, getSecret) {
|
|
137
|
+
const resolved = {};
|
|
138
|
+
for (const [key, value] of Object.entries(secrets)) {
|
|
139
|
+
if (typeof value === 'string') {
|
|
140
|
+
resolved[key] = value;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
const secretValue = await getSecret(value.secret);
|
|
144
|
+
resolved[key] = secretValue ?? '';
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return resolved;
|
|
148
|
+
}
|
|
149
|
+
// =============================================================================
|
|
150
|
+
// Custom Service Env Resolution
|
|
151
|
+
// =============================================================================
|
|
152
|
+
/**
|
|
153
|
+
* Resolve custom service addresses into environment variables.
|
|
154
|
+
* Uses ${...} templates from IServiceRequirement.env.
|
|
155
|
+
*
|
|
156
|
+
* Templates:
|
|
157
|
+
* ${host} — resolved hostname/IP
|
|
158
|
+
* ${port:name} — resolved port for named port
|
|
159
|
+
* ${secret:name} — resolved secret value
|
|
160
|
+
*/
|
|
161
|
+
export function resolveCustomServiceEnv(requirement, address) {
|
|
162
|
+
const env = {};
|
|
163
|
+
for (const [key, template] of Object.entries(requirement.env)) {
|
|
164
|
+
let value = template;
|
|
165
|
+
value = value.replace(/\$\{host\}/g, address.host);
|
|
166
|
+
value = value.replace(/\$\{port:(\w[\w-]*)\}/g, (_match, portName) => String(address.ports[portName] ?? requirement.ports[portName] ?? ''));
|
|
167
|
+
value = value.replace(/\$\{secret:(\w[\w-]*)\}/g, (_match, secretName) => address.secrets?.[secretName] ?? '');
|
|
168
|
+
env[key] = value;
|
|
169
|
+
}
|
|
170
|
+
return env;
|
|
171
|
+
}
|
|
172
|
+
// =============================================================================
|
|
173
|
+
// Stack Resolution — Per-stack config with namespaced infrastructure
|
|
174
|
+
// =============================================================================
|
|
175
|
+
/**
|
|
176
|
+
* Resolve all app configs for a stack deployment.
|
|
177
|
+
*
|
|
178
|
+
* Unlike `resolveEnvironment` which resolves a flat environment, this function
|
|
179
|
+
* resolves for a specific stack within a project, applying:
|
|
180
|
+
* - Stack-specific infrastructure overrides
|
|
181
|
+
* - Namespaced port allocation (no conflicts between stacks)
|
|
182
|
+
* - Redis DB range isolation per stack
|
|
183
|
+
* - Stack-level environment variable injection
|
|
184
|
+
*
|
|
185
|
+
* @param config - Ecosystem config from omnitron.config.ts
|
|
186
|
+
* @param project - Project name (for namespacing)
|
|
187
|
+
* @param stackName - Target stack name
|
|
188
|
+
* @param stackConfig - Stack configuration
|
|
189
|
+
* @param appDefinitions - Bootstrap definitions with `requires` fields
|
|
190
|
+
* @param portAllocation - Port allocation for this stack (from StackInfrastructureManager)
|
|
191
|
+
* @param jwtSecret - Shared JWT secret
|
|
192
|
+
*/
|
|
193
|
+
export function resolveStack(config, project, stackName, stackConfig, appDefinitions, portAllocation, jwtSecret, normalizedServices) {
|
|
194
|
+
// Determine which apps run in this stack
|
|
195
|
+
const enabledApps = stackConfig.apps === 'all' || !stackConfig.apps
|
|
196
|
+
? config.apps.filter((a) => a.enabled !== false)
|
|
197
|
+
: config.apps.filter((a) => a.enabled !== false && stackConfig.apps.includes(a.name));
|
|
198
|
+
// Resolve infrastructure addresses based on stack type
|
|
199
|
+
const addresses = resolveStackAddresses(config, stackConfig, portAllocation);
|
|
200
|
+
// Generic service addresses (from preset-normalized services)
|
|
201
|
+
const genericAddresses = normalizedServices
|
|
202
|
+
? resolveGenericServiceAddresses(normalizedServices, stackConfig, portAllocation)
|
|
203
|
+
: undefined;
|
|
204
|
+
// Build OmnitronAppConfig map from definitions (new path) or fall back to requires (legacy)
|
|
205
|
+
const omnitronConfigs = new Map();
|
|
206
|
+
let useNewPath = false;
|
|
207
|
+
for (const entry of enabledApps) {
|
|
208
|
+
const definition = appDefinitions.get(entry.name);
|
|
209
|
+
if (definition?.omnitronConfig) {
|
|
210
|
+
omnitronConfigs.set(entry.name, definition.omnitronConfig);
|
|
211
|
+
useNewPath = true;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
// Allocate Redis DBs with stack offset
|
|
215
|
+
const redisDbOffset = stackConfig.settings?.redisDbOffset ?? portAllocation?.redisDbStart ?? 0;
|
|
216
|
+
const redisAllocation = useNewPath
|
|
217
|
+
? allocateRedisDBs(enabledApps.map((a) => a.name), omnitronConfigs, redisDbOffset)
|
|
218
|
+
: allocateRedisDBsLegacy(enabledApps, appDefinitions, redisDbOffset);
|
|
219
|
+
// Generate per-app resolved config
|
|
220
|
+
const appConfigs = new Map();
|
|
221
|
+
const sharedJwtSecret = jwtSecret ?? 'dev-omnitron-secret-key-minimum-32-chars-long!!';
|
|
222
|
+
for (const entry of enabledApps) {
|
|
223
|
+
const definition = appDefinitions.get(entry.name);
|
|
224
|
+
const omnitronCfg = omnitronConfigs.get(entry.name);
|
|
225
|
+
// New path: resolve from OmnitronAppConfig
|
|
226
|
+
if (omnitronCfg) {
|
|
227
|
+
const resolved = {};
|
|
228
|
+
// Database — use generic address if available
|
|
229
|
+
if (omnitronCfg.database) {
|
|
230
|
+
const dbCfg = typeof omnitronCfg.database === 'object' ? omnitronCfg.database : {};
|
|
231
|
+
const dialect = dbCfg.dialect ?? 'postgres';
|
|
232
|
+
const pool = dbCfg.pool ? { min: dbCfg.pool.min ?? 2, max: dbCfg.pool.max ?? 10 } : undefined;
|
|
233
|
+
const dbAddr = genericAddresses?.['postgres'];
|
|
234
|
+
resolved.database = {
|
|
235
|
+
dialect,
|
|
236
|
+
host: dbAddr?.host ?? addresses.postgres.host,
|
|
237
|
+
port: dbAddr?.ports['main'] ?? addresses.postgres.port,
|
|
238
|
+
database: entry.name,
|
|
239
|
+
user: dbAddr?.secrets?.['user'] ?? addresses.postgres.user,
|
|
240
|
+
password: dbAddr?.secrets?.['password'] ?? addresses.postgres.password,
|
|
241
|
+
pool,
|
|
242
|
+
ssl: stackName === 'prod',
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
// Redis — use generic address if available
|
|
246
|
+
if (omnitronCfg.redis) {
|
|
247
|
+
const redisCfg = typeof omnitronCfg.redis === 'object' ? omnitronCfg.redis : {};
|
|
248
|
+
const allocatedDb = redisAllocation.get(entry.name) ?? redisDbOffset;
|
|
249
|
+
const redisAddr = genericAddresses?.['redis'];
|
|
250
|
+
resolved.redis = {
|
|
251
|
+
host: redisAddr?.host ?? addresses.redis.host,
|
|
252
|
+
port: redisAddr?.ports['main'] ?? addresses.redis.port,
|
|
253
|
+
db: allocatedDb,
|
|
254
|
+
password: redisAddr?.secrets?.['password'] ?? addresses.redis.password,
|
|
255
|
+
prefix: redisCfg.prefix,
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
// S3/Storage — use generic address if available
|
|
259
|
+
if (omnitronCfg.s3) {
|
|
260
|
+
const s3Cfg = typeof omnitronCfg.s3 === 'object' ? omnitronCfg.s3 : {};
|
|
261
|
+
const storageAddr = genericAddresses?.['minio'];
|
|
262
|
+
const s3Port = storageAddr?.ports['api'] ?? 9000;
|
|
263
|
+
const s3Host = storageAddr?.host ?? 'localhost';
|
|
264
|
+
resolved.s3 = {
|
|
265
|
+
endpoint: addresses.s3?.endpoint ?? `http://${s3Host}:${s3Port}`,
|
|
266
|
+
accessKey: storageAddr?.secrets?.['accessKey'] ?? addresses.s3?.accessKey ?? 'minioadmin',
|
|
267
|
+
secretKey: storageAddr?.secrets?.['secretKey'] ?? addresses.s3?.secretKey ?? 'minioadmin',
|
|
268
|
+
bucket: s3Cfg.bucket ?? entry.name,
|
|
269
|
+
forcePathStyle: true,
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
// Auth — always inject shared JWT secret
|
|
273
|
+
resolved.auth = {
|
|
274
|
+
jwtSecret: sharedJwtSecret,
|
|
275
|
+
algorithm: 'HS256',
|
|
276
|
+
};
|
|
277
|
+
// Titan service module Redis — discovery
|
|
278
|
+
if (omnitronCfg.services?.discovery) {
|
|
279
|
+
const discoveryDb = redisAllocation.get(`${entry.name}:discovery`) ?? redisDbOffset;
|
|
280
|
+
resolved['discoveryRedis'] = {
|
|
281
|
+
host: addresses.redis.host,
|
|
282
|
+
port: addresses.redis.port,
|
|
283
|
+
db: discoveryDb,
|
|
284
|
+
password: addresses.redis.password,
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
// Titan service module Redis — notifications
|
|
288
|
+
if (omnitronCfg.services?.notifications) {
|
|
289
|
+
const notificationsDb = redisAllocation.get(`${entry.name}:notifications`) ?? redisDbOffset;
|
|
290
|
+
resolved['notificationsRedis'] = {
|
|
291
|
+
host: addresses.redis.host,
|
|
292
|
+
port: addresses.redis.port,
|
|
293
|
+
db: notificationsDb,
|
|
294
|
+
password: addresses.redis.password,
|
|
295
|
+
};
|
|
296
|
+
}
|
|
297
|
+
// Cross-app Redis — priceverse price data (read-through from paysys/swap)
|
|
298
|
+
if (omnitronCfg.services?.priceverse) {
|
|
299
|
+
// Priceverse app's Redis DB — look up from allocation or use known offset
|
|
300
|
+
const priceverseDb = redisAllocation.get('priceverse') ?? (redisDbOffset + 2);
|
|
301
|
+
resolved['priceverseRedis'] = {
|
|
302
|
+
host: addresses.redis.host,
|
|
303
|
+
port: addresses.redis.port,
|
|
304
|
+
db: priceverseDb,
|
|
305
|
+
password: addresses.redis.password,
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
// Gateway Redis — main app writes maintenance state to gateway's dedicated Redis DB
|
|
309
|
+
// DB index is auto-allocated by omnitron (redisDbEnd + 1, after app range)
|
|
310
|
+
const hasGateway = config.gateway || config.infrastructure?.services?.['gateway'] || normalizedServices?.['gateway'];
|
|
311
|
+
if (entry.name === 'main' && hasGateway) {
|
|
312
|
+
const gatewayRedisDb = redisDbOffset + 5; // After app DBs (0-4 range)
|
|
313
|
+
resolved['gatewayRedis'] = {
|
|
314
|
+
host: addresses.redis.host,
|
|
315
|
+
port: addresses.redis.port,
|
|
316
|
+
db: gatewayRedisDb,
|
|
317
|
+
password: addresses.redis.password,
|
|
318
|
+
};
|
|
319
|
+
}
|
|
320
|
+
// Custom infrastructure services — resolve env vars from templates
|
|
321
|
+
if (omnitronCfg.infrastructure) {
|
|
322
|
+
for (const [serviceName, requirement] of Object.entries(omnitronCfg.infrastructure)) {
|
|
323
|
+
// Check for stack-level override (app-specific or global)
|
|
324
|
+
const override = stackConfig.serviceOverrides?.[`${entry.name}/${serviceName}`]
|
|
325
|
+
?? stackConfig.serviceOverrides?.[serviceName];
|
|
326
|
+
if (override?.disabled)
|
|
327
|
+
continue;
|
|
328
|
+
let address;
|
|
329
|
+
if (override?.external) {
|
|
330
|
+
// External service — use provided address directly
|
|
331
|
+
address = {
|
|
332
|
+
host: override.external.host,
|
|
333
|
+
ports: override.external.ports,
|
|
334
|
+
secrets: resolveServiceSecrets(override.external.secrets ?? requirement.secrets ?? {}),
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
// Docker-provisioned — localhost with mapped ports
|
|
339
|
+
const docker = requirement.docker;
|
|
340
|
+
const hostPorts = {};
|
|
341
|
+
for (const [portName, containerPort] of Object.entries(requirement.ports)) {
|
|
342
|
+
hostPorts[portName] = docker?.portMappings?.[portName] ?? containerPort;
|
|
343
|
+
}
|
|
344
|
+
address = {
|
|
345
|
+
host: 'localhost',
|
|
346
|
+
ports: hostPorts,
|
|
347
|
+
secrets: resolveServiceSecrets(requirement.secrets ?? {}),
|
|
348
|
+
};
|
|
349
|
+
}
|
|
350
|
+
// Generate env vars from templates and merge into resolved config
|
|
351
|
+
const serviceEnv = resolveCustomServiceEnv(requirement, address);
|
|
352
|
+
if (!resolved['_customEnv'])
|
|
353
|
+
resolved['_customEnv'] = {};
|
|
354
|
+
Object.assign(resolved['_customEnv'], serviceEnv);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
appConfigs.set(entry.name, resolved);
|
|
358
|
+
continue;
|
|
359
|
+
}
|
|
360
|
+
// Legacy path: resolve from requires (backward compatibility)
|
|
361
|
+
const requires = definition?.requires;
|
|
362
|
+
const resolved = {};
|
|
363
|
+
if (requires?.postgres) {
|
|
364
|
+
resolved.database = {
|
|
365
|
+
dialect: 'postgres',
|
|
366
|
+
host: addresses.postgres.host,
|
|
367
|
+
port: addresses.postgres.port,
|
|
368
|
+
database: requires.postgres.database,
|
|
369
|
+
user: addresses.postgres.user,
|
|
370
|
+
password: addresses.postgres.password,
|
|
371
|
+
pool: requires.postgres.pool ? {
|
|
372
|
+
min: requires.postgres.pool.min ?? 2,
|
|
373
|
+
max: requires.postgres.pool.max ?? 10,
|
|
374
|
+
} : undefined,
|
|
375
|
+
ssl: stackName === 'prod',
|
|
376
|
+
};
|
|
377
|
+
}
|
|
378
|
+
if (requires?.redis) {
|
|
379
|
+
const allocatedDb = redisAllocation.get(entry.name) ?? requires.redis.db ?? redisDbOffset;
|
|
380
|
+
resolved.redis = {
|
|
381
|
+
host: addresses.redis.host,
|
|
382
|
+
port: addresses.redis.port,
|
|
383
|
+
db: allocatedDb,
|
|
384
|
+
password: addresses.redis.password,
|
|
385
|
+
prefix: requires.redis.prefix,
|
|
386
|
+
};
|
|
387
|
+
}
|
|
388
|
+
if (requires?.s3 && addresses.s3) {
|
|
389
|
+
resolved.s3 = {
|
|
390
|
+
endpoint: addresses.s3.endpoint,
|
|
391
|
+
accessKey: addresses.s3.accessKey,
|
|
392
|
+
secretKey: addresses.s3.secretKey,
|
|
393
|
+
bucket: requires.s3.buckets?.[0] ?? 'storage',
|
|
394
|
+
forcePathStyle: true,
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
if (definition?.auth?.jwt?.enabled) {
|
|
398
|
+
resolved.auth = {
|
|
399
|
+
jwtSecret: sharedJwtSecret,
|
|
400
|
+
algorithm: 'HS256',
|
|
401
|
+
};
|
|
402
|
+
}
|
|
403
|
+
appConfigs.set(entry.name, resolved);
|
|
404
|
+
}
|
|
405
|
+
return {
|
|
406
|
+
project,
|
|
407
|
+
stack: stackName,
|
|
408
|
+
type: stackConfig.type,
|
|
409
|
+
appConfigs,
|
|
410
|
+
infrastructureAddresses: addresses,
|
|
411
|
+
enabledApps,
|
|
412
|
+
redisAllocation,
|
|
413
|
+
};
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* Resolve infrastructure addresses for a stack deployment.
|
|
417
|
+
*/
|
|
418
|
+
function resolveStackAddresses(config, stackConfig, portAllocation) {
|
|
419
|
+
const infra = config.infrastructure;
|
|
420
|
+
if (stackConfig.type === 'local') {
|
|
421
|
+
// Local stack: all services on localhost with port allocation (or defaults).
|
|
422
|
+
// S3/MinIO is always assumed available for local stacks (omnitron auto-provisions
|
|
423
|
+
// infrastructure from app requirements when not explicitly configured).
|
|
424
|
+
const minioPort = portAllocation?.minioPort ?? infra?.minio?.ports?.api ?? 9000;
|
|
425
|
+
return {
|
|
426
|
+
postgres: {
|
|
427
|
+
host: 'localhost',
|
|
428
|
+
port: portAllocation?.postgresPort ?? infra?.postgres?.port ?? 5432,
|
|
429
|
+
user: infra?.postgres?.user ?? 'postgres',
|
|
430
|
+
password: typeof infra?.postgres?.password === 'string' ? infra.postgres.password : 'postgres',
|
|
431
|
+
},
|
|
432
|
+
redis: {
|
|
433
|
+
host: 'localhost',
|
|
434
|
+
port: portAllocation?.redisPort ?? infra?.redis?.port ?? 6379,
|
|
435
|
+
password: typeof infra?.redis?.password === 'string' ? infra.redis.password : undefined,
|
|
436
|
+
},
|
|
437
|
+
s3: {
|
|
438
|
+
endpoint: `http://localhost:${minioPort}`,
|
|
439
|
+
accessKey: infra?.minio?.accessKey ?? 'minioadmin',
|
|
440
|
+
secretKey: typeof infra?.minio?.secretKey === 'string' ? infra.minio.secretKey : 'minioadmin',
|
|
441
|
+
},
|
|
442
|
+
};
|
|
443
|
+
}
|
|
444
|
+
if (stackConfig.type === 'remote' && stackConfig.nodes?.length) {
|
|
445
|
+
const node = stackConfig.nodes[0];
|
|
446
|
+
return {
|
|
447
|
+
postgres: { host: node.host, port: 5432, user: 'postgres', password: 'postgres' },
|
|
448
|
+
redis: { host: node.host, port: 6379 },
|
|
449
|
+
s3: { endpoint: `http://${node.host}:9000`, accessKey: 'minioadmin', secretKey: 'minioadmin' },
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
if (stackConfig.type === 'cluster' && stackConfig.nodes?.length) {
|
|
453
|
+
const dbNode = stackConfig.nodes.find((n) => n.role === 'database');
|
|
454
|
+
const cacheNode = stackConfig.nodes.find((n) => n.role === 'cache');
|
|
455
|
+
const gwNode = stackConfig.nodes.find((n) => n.role === 'gateway');
|
|
456
|
+
return {
|
|
457
|
+
postgres: {
|
|
458
|
+
host: dbNode?.host ?? 'localhost',
|
|
459
|
+
port: dbNode?.port ?? 5432,
|
|
460
|
+
user: 'postgres',
|
|
461
|
+
password: 'postgres',
|
|
462
|
+
},
|
|
463
|
+
redis: {
|
|
464
|
+
host: cacheNode?.host ?? 'localhost',
|
|
465
|
+
port: cacheNode?.port ?? 6379,
|
|
466
|
+
},
|
|
467
|
+
gateway: gwNode ? { host: gwNode.host, port: gwNode.port ?? 8080 } : undefined,
|
|
468
|
+
};
|
|
469
|
+
}
|
|
470
|
+
// Fallback: localhost
|
|
471
|
+
return {
|
|
472
|
+
postgres: { host: 'localhost', port: 5432, user: 'postgres', password: 'postgres' },
|
|
473
|
+
redis: { host: 'localhost', port: 6379 },
|
|
474
|
+
};
|
|
475
|
+
}
|
|
476
|
+
/**
|
|
477
|
+
* Allocate Redis DB indexes sequentially from a stack-specific offset.
|
|
478
|
+
* Handles both app-level Redis and Titan service module Redis (discovery, notifications).
|
|
479
|
+
*/
|
|
480
|
+
function allocateRedisDBs(apps, omnitronConfigs, offset) {
|
|
481
|
+
const allocation = new Map();
|
|
482
|
+
let nextDb = offset;
|
|
483
|
+
// App Redis DBs
|
|
484
|
+
for (const appName of apps) {
|
|
485
|
+
const config = omnitronConfigs.get(appName);
|
|
486
|
+
if (config?.redis) {
|
|
487
|
+
allocation.set(appName, nextDb++);
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
// Titan service module Redis DBs
|
|
491
|
+
for (const appName of apps) {
|
|
492
|
+
const config = omnitronConfigs.get(appName);
|
|
493
|
+
if (config?.services?.discovery) {
|
|
494
|
+
allocation.set(`${appName}:discovery`, nextDb++);
|
|
495
|
+
}
|
|
496
|
+
if (config?.services?.notifications) {
|
|
497
|
+
allocation.set(`${appName}:notifications`, nextDb++);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
return allocation;
|
|
501
|
+
}
|
|
502
|
+
/**
|
|
503
|
+
* Legacy Redis DB allocation — respects explicit DB preferences from requires.
|
|
504
|
+
* @deprecated Use allocateRedisDBs with OmnitronAppConfig instead.
|
|
505
|
+
*/
|
|
506
|
+
function allocateRedisDBsLegacy(apps, definitions, offset) {
|
|
507
|
+
const allocation = new Map();
|
|
508
|
+
const usedDbs = new Set();
|
|
509
|
+
// First pass: respect explicit preferences (shifted by offset)
|
|
510
|
+
for (const app of apps) {
|
|
511
|
+
const def = definitions.get(app.name);
|
|
512
|
+
const preferredDb = def?.requires?.redis?.db;
|
|
513
|
+
if (preferredDb !== undefined) {
|
|
514
|
+
const shiftedDb = preferredDb + offset;
|
|
515
|
+
allocation.set(app.name, shiftedDb);
|
|
516
|
+
usedDbs.add(shiftedDb);
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
// Second pass: allocate remaining within offset range
|
|
520
|
+
let nextDb = offset;
|
|
521
|
+
for (const app of apps) {
|
|
522
|
+
if (allocation.has(app.name))
|
|
523
|
+
continue;
|
|
524
|
+
const def = definitions.get(app.name);
|
|
525
|
+
if (!def?.requires?.redis)
|
|
526
|
+
continue;
|
|
527
|
+
while (usedDbs.has(nextDb))
|
|
528
|
+
nextDb++;
|
|
529
|
+
allocation.set(app.name, nextDb);
|
|
530
|
+
usedDbs.add(nextDb);
|
|
531
|
+
nextDb++;
|
|
532
|
+
}
|
|
533
|
+
return allocation;
|
|
534
|
+
}
|
|
535
|
+
// =============================================================================
|
|
536
|
+
// Secret Resolution (Phase 5)
|
|
537
|
+
// =============================================================================
|
|
538
|
+
/**
|
|
539
|
+
* Walk the config tree and resolve `{ secret: 'key' }` references
|
|
540
|
+
* using the SecretsService. Returns a new config with secrets inlined.
|
|
541
|
+
*/
|
|
542
|
+
export async function resolveSecretRefs(config, getSecret) {
|
|
543
|
+
const result = {};
|
|
544
|
+
for (const [key, value] of Object.entries(config)) {
|
|
545
|
+
if (value && typeof value === 'object' && !Array.isArray(value)) {
|
|
546
|
+
const obj = value;
|
|
547
|
+
if ('secret' in obj && typeof obj['secret'] === 'string') {
|
|
548
|
+
// Resolve secret reference: { secret: 'key' } → actual value
|
|
549
|
+
const secretValue = await getSecret(obj['secret']);
|
|
550
|
+
result[key] = secretValue ?? obj['default'] ?? '';
|
|
551
|
+
}
|
|
552
|
+
else {
|
|
553
|
+
// Recurse into nested objects
|
|
554
|
+
result[key] = await resolveSecretRefs(obj, getSecret);
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
else {
|
|
558
|
+
result[key] = value;
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
return result;
|
|
562
|
+
}
|
|
563
|
+
//# sourceMappingURL=config-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-resolver.js","sourceRoot":"","sources":["../../src/project/config-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dependency Analyzer — Resolves workspace package graph for an app
|
|
3
|
+
*
|
|
4
|
+
* Given an app (e.g., 'main'), traces all workspace:* dependencies
|
|
5
|
+
* to determine exactly which packages need to be shipped to a remote node.
|
|
6
|
+
*
|
|
7
|
+
* Example for apps/main:
|
|
8
|
+
* apps/main → depends on:
|
|
9
|
+
* @omnitron-dev/titan (packages/titan)
|
|
10
|
+
* @omnitron-dev/common (packages/common)
|
|
11
|
+
* @omnitron-dev/eventemitter (packages/eventemitter)
|
|
12
|
+
* @omnitron-dev/messagepack (packages/messagepack)
|
|
13
|
+
* @omnitron-dev/rotif (packages/rotif)
|
|
14
|
+
*
|
|
15
|
+
* The analyzer returns the minimal set of workspace packages + the app itself
|
|
16
|
+
* that must be copied to the remote node. Only compiled dist/ is needed.
|
|
17
|
+
*/
|
|
18
|
+
export interface WorkspacePackage {
|
|
19
|
+
/** Package name from package.json (e.g., '@omnitron-dev/titan') */
|
|
20
|
+
name: string;
|
|
21
|
+
/** Absolute path to package root */
|
|
22
|
+
path: string;
|
|
23
|
+
/** Relative path from monorepo root (e.g., 'packages/titan') */
|
|
24
|
+
relativePath: string;
|
|
25
|
+
/** Whether this has a dist/ directory */
|
|
26
|
+
hasDist: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface AppDependencyGraph {
|
|
29
|
+
/** The app itself */
|
|
30
|
+
app: WorkspacePackage;
|
|
31
|
+
/** All workspace packages this app depends on (transitive) */
|
|
32
|
+
workspaceDeps: WorkspacePackage[];
|
|
33
|
+
/** All npm (external) dependencies needed */
|
|
34
|
+
externalDeps: string[];
|
|
35
|
+
}
|
|
36
|
+
export declare class DependencyAnalyzer {
|
|
37
|
+
private readonly monorepoRoot;
|
|
38
|
+
private readonly workspacePackages;
|
|
39
|
+
constructor(monorepoRoot: string);
|
|
40
|
+
/**
|
|
41
|
+
* Analyze all workspace dependencies for an app.
|
|
42
|
+
* Returns the minimal set of packages to deploy.
|
|
43
|
+
*/
|
|
44
|
+
analyze(appPath: string): AppDependencyGraph;
|
|
45
|
+
/**
|
|
46
|
+
* Get all workspace packages.
|
|
47
|
+
*/
|
|
48
|
+
getWorkspacePackages(): WorkspacePackage[];
|
|
49
|
+
private scanWorkspace;
|
|
50
|
+
private traceWorkspaceDeps;
|
|
51
|
+
private readPackageJson;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=dependency-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-analyzer.d.ts","sourceRoot":"","sources":["../../src/project/dependency-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AASH,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,qBAAqB;IACrB,GAAG,EAAE,gBAAgB,CAAC;IACtB,8DAA8D;IAC9D,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,6CAA6C;IAC7C,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAMD,qBAAa,kBAAkB;IAGjB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAFzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAuC;gBAE5C,YAAY,EAAE,MAAM;IAIjD;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IAsB5C;;OAEG;IACH,oBAAoB,IAAI,gBAAgB,EAAE;IAQ1C,OAAO,CAAC,aAAa;IAsCrB,OAAO,CAAC,kBAAkB;IAmC1B,OAAO,CAAC,eAAe;CAQxB"}
|