@omnitron-dev/omnitron 0.2.0 → 0.3.0
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/dist/BUILD.json +5 -0
- package/dist/cli/omnitron.js +351 -29
- package/dist/cli/omnitron.js.map +1 -1
- package/dist/cluster/cluster.rpc-service.d.ts +40 -0
- package/dist/cluster/cluster.rpc-service.d.ts.map +1 -1
- package/dist/cluster/cluster.rpc-service.js +49 -3
- package/dist/cluster/cluster.rpc-service.js.map +1 -1
- package/dist/cluster/config-sync.d.ts.map +1 -1
- package/dist/cluster/config-sync.js.map +1 -1
- package/dist/cluster/leader-election.d.ts +90 -2
- package/dist/cluster/leader-election.d.ts.map +1 -1
- package/dist/cluster/leader-election.js +176 -22
- package/dist/cluster/leader-election.js.map +1 -1
- package/dist/cluster/mesh-link.d.ts +136 -0
- package/dist/cluster/mesh-link.d.ts.map +1 -0
- package/dist/cluster/mesh-link.js +212 -0
- package/dist/cluster/mesh-link.js.map +1 -0
- package/dist/cluster/mesh.d.ts +59 -0
- package/dist/cluster/mesh.d.ts.map +1 -0
- package/dist/cluster/mesh.js +117 -0
- package/dist/cluster/mesh.js.map +1 -0
- package/dist/cluster/slave-connector.d.ts +193 -9
- package/dist/cluster/slave-connector.d.ts.map +1 -1
- package/dist/cluster/slave-connector.js +409 -37
- package/dist/cluster/slave-connector.js.map +1 -1
- package/dist/commands/audit.d.ts +65 -0
- package/dist/commands/audit.d.ts.map +1 -0
- package/dist/commands/audit.js +233 -0
- package/dist/commands/audit.js.map +1 -0
- package/dist/commands/backup.d.ts +4 -0
- package/dist/commands/backup.d.ts.map +1 -1
- package/dist/commands/backup.js +255 -33
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/cluster.d.ts.map +1 -1
- package/dist/commands/cluster.js +78 -47
- package/dist/commands/cluster.js.map +1 -1
- package/dist/commands/daemon-cmd.d.ts +7 -1
- package/dist/commands/daemon-cmd.d.ts.map +1 -1
- package/dist/commands/daemon-cmd.js +87 -21
- package/dist/commands/daemon-cmd.js.map +1 -1
- package/dist/commands/daemon-required.d.ts +34 -0
- package/dist/commands/daemon-required.d.ts.map +1 -0
- package/dist/commands/daemon-required.js +92 -0
- package/dist/commands/daemon-required.js.map +1 -0
- package/dist/commands/deploy.d.ts +70 -8
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +99 -64
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/discover.d.ts +25 -4
- package/dist/commands/discover.d.ts.map +1 -1
- package/dist/commands/discover.js +155 -102
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/doctor.d.ts +293 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +1706 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/env.d.ts +8 -1
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/env.js +13 -8
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/exec.d.ts.map +1 -1
- package/dist/commands/exec.js +3 -2
- package/dist/commands/exec.js.map +1 -1
- package/dist/commands/fleet-asking.d.ts +87 -0
- package/dist/commands/fleet-asking.d.ts.map +1 -0
- package/dist/commands/fleet-asking.js +176 -0
- package/dist/commands/fleet-asking.js.map +1 -0
- package/dist/commands/fleet.d.ts +18 -0
- package/dist/commands/fleet.d.ts.map +1 -1
- package/dist/commands/fleet.js +314 -74
- package/dist/commands/fleet.js.map +1 -1
- package/dist/commands/health-check.d.ts +8 -6
- package/dist/commands/health-check.d.ts.map +1 -1
- package/dist/commands/health-check.js +26 -23
- package/dist/commands/health-check.js.map +1 -1
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +22 -8
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/infra.d.ts +42 -1
- package/dist/commands/infra.d.ts.map +1 -1
- package/dist/commands/infra.js +418 -49
- package/dist/commands/infra.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +21 -36
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/inspect-graph.d.ts.map +1 -1
- package/dist/commands/inspect-graph.js +2 -6
- package/dist/commands/inspect-graph.js.map +1 -1
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +110 -14
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/k8s.d.ts.map +1 -1
- package/dist/commands/k8s.js +23 -18
- package/dist/commands/k8s.js.map +1 -1
- package/dist/commands/kb.d.ts.map +1 -1
- package/dist/commands/kb.js +88 -29
- package/dist/commands/kb.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +21 -9
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/log-health.d.ts +120 -0
- package/dist/commands/log-health.d.ts.map +1 -0
- package/dist/commands/log-health.js +212 -0
- package/dist/commands/log-health.js.map +1 -0
- package/dist/commands/logs.d.ts +96 -2
- package/dist/commands/logs.d.ts.map +1 -1
- package/dist/commands/logs.js +522 -196
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/metrics.d.ts.map +1 -1
- package/dist/commands/metrics.js +35 -17
- package/dist/commands/metrics.js.map +1 -1
- package/dist/commands/monit.d.ts.map +1 -1
- package/dist/commands/monit.js +3 -2
- package/dist/commands/monit.js.map +1 -1
- package/dist/commands/node.d.ts +68 -0
- package/dist/commands/node.d.ts.map +1 -1
- package/dist/commands/node.js +285 -68
- package/dist/commands/node.js.map +1 -1
- package/dist/commands/output.d.ts +10 -0
- package/dist/commands/output.d.ts.map +1 -1
- package/dist/commands/output.js +41 -1
- package/dist/commands/output.js.map +1 -1
- package/dist/commands/pipeline.d.ts.map +1 -1
- package/dist/commands/pipeline.js +26 -19
- package/dist/commands/pipeline.js.map +1 -1
- package/dist/commands/project.d.ts +19 -0
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +125 -27
- package/dist/commands/project.js.map +1 -1
- package/dist/commands/release-store.d.ts +28 -0
- package/dist/commands/release-store.d.ts.map +1 -0
- package/dist/commands/release-store.js +158 -0
- package/dist/commands/release-store.js.map +1 -0
- package/dist/commands/release.d.ts +61 -0
- package/dist/commands/release.d.ts.map +1 -0
- package/dist/commands/release.js +555 -0
- package/dist/commands/release.js.map +1 -0
- package/dist/commands/reload.d.ts +16 -0
- package/dist/commands/reload.d.ts.map +1 -1
- package/dist/commands/reload.js +21 -5
- package/dist/commands/reload.js.map +1 -1
- package/dist/commands/remote.d.ts +40 -0
- package/dist/commands/remote.d.ts.map +1 -1
- package/dist/commands/remote.js +146 -35
- package/dist/commands/remote.js.map +1 -1
- package/dist/commands/restart.d.ts +16 -0
- package/dist/commands/restart.d.ts.map +1 -1
- package/dist/commands/restart.js +21 -5
- package/dist/commands/restart.js.map +1 -1
- package/dist/commands/scale.d.ts.map +1 -1
- package/dist/commands/scale.js +4 -3
- package/dist/commands/scale.js.map +1 -1
- package/dist/commands/secret.d.ts +54 -0
- package/dist/commands/secret.d.ts.map +1 -1
- package/dist/commands/secret.js +236 -34
- package/dist/commands/secret.js.map +1 -1
- package/dist/commands/service-units.d.ts +181 -0
- package/dist/commands/service-units.d.ts.map +1 -0
- package/dist/commands/service-units.js +291 -0
- package/dist/commands/service-units.js.map +1 -0
- package/dist/commands/service.d.ts +39 -0
- package/dist/commands/service.d.ts.map +1 -0
- package/dist/commands/service.js +370 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/spinner.d.ts +29 -0
- package/dist/commands/spinner.d.ts.map +1 -0
- package/dist/commands/spinner.js +44 -0
- package/dist/commands/spinner.js.map +1 -0
- package/dist/commands/stack.d.ts +49 -1
- package/dist/commands/stack.d.ts.map +1 -1
- package/dist/commands/stack.js +325 -12
- package/dist/commands/stack.js.map +1 -1
- package/dist/commands/start.d.ts +16 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +20 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts +9 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +45 -29
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts +16 -0
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +34 -6
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tor.d.ts +14 -7
- package/dist/commands/tor.d.ts.map +1 -1
- package/dist/commands/tor.js +113 -33
- package/dist/commands/tor.js.map +1 -1
- package/dist/commands/up.d.ts +85 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +180 -32
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/webapp.d.ts.map +1 -1
- package/dist/commands/webapp.js +2 -1
- package/dist/commands/webapp.js.map +1 -1
- package/dist/config/defaults.d.ts +16 -0
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +26 -3
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/define-ecosystem.d.ts.map +1 -1
- package/dist/config/define-ecosystem.js +2 -0
- package/dist/config/define-ecosystem.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/loader.d.ts +45 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +64 -6
- package/dist/config/loader.js.map +1 -1
- package/dist/config/omnitron-config.schema.d.ts.map +1 -1
- package/dist/config/omnitron-config.schema.js +16 -0
- package/dist/config/omnitron-config.schema.js.map +1 -1
- package/dist/config/types.d.ts +411 -42
- package/dist/config/types.d.ts.map +1 -1
- package/dist/daemon/config-reload.d.ts +27 -0
- package/dist/daemon/config-reload.d.ts.map +1 -0
- package/dist/daemon/config-reload.js +42 -0
- package/dist/daemon/config-reload.js.map +1 -0
- package/dist/daemon/daemon-client.d.ts +136 -2
- package/dist/daemon/daemon-client.d.ts.map +1 -1
- package/dist/daemon/daemon-client.js +307 -21
- package/dist/daemon/daemon-client.js.map +1 -1
- package/dist/daemon/daemon-entry.js +90 -30
- package/dist/daemon/daemon-entry.js.map +1 -1
- package/dist/daemon/daemon-scheduler.d.ts +4 -0
- package/dist/daemon/daemon-scheduler.d.ts.map +1 -1
- package/dist/daemon/daemon-scheduler.js +137 -7
- package/dist/daemon/daemon-scheduler.js.map +1 -1
- package/dist/daemon/daemon-state-store.service.d.ts +263 -0
- package/dist/daemon/daemon-state-store.service.d.ts.map +1 -0
- package/dist/daemon/daemon-state-store.service.js +446 -0
- package/dist/daemon/daemon-state-store.service.js.map +1 -0
- package/dist/daemon/daemon.d.ts +205 -1
- package/dist/daemon/daemon.d.ts.map +1 -1
- package/dist/daemon/daemon.js +1139 -139
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/daemon.module.d.ts.map +1 -1
- package/dist/daemon/daemon.module.js +163 -83
- package/dist/daemon/daemon.module.js.map +1 -1
- package/dist/daemon/daemon.rpc-service.d.ts +90 -1
- package/dist/daemon/daemon.rpc-service.d.ts.map +1 -1
- package/dist/daemon/daemon.rpc-service.js +438 -96
- package/dist/daemon/daemon.rpc-service.js.map +1 -1
- package/dist/daemon/pid-manager.d.ts +16 -3
- package/dist/daemon/pid-manager.d.ts.map +1 -1
- package/dist/daemon/pid-manager.js +31 -4
- package/dist/daemon/pid-manager.js.map +1 -1
- package/dist/daemon/spawn-daemon.d.ts +73 -0
- package/dist/daemon/spawn-daemon.d.ts.map +1 -0
- package/dist/daemon/spawn-daemon.js +101 -0
- package/dist/daemon/spawn-daemon.js.map +1 -0
- package/dist/daemon/state-store.d.ts +65 -3
- package/dist/daemon/state-store.d.ts.map +1 -1
- package/dist/daemon/state-store.js +100 -58
- package/dist/daemon/state-store.js.map +1 -1
- package/dist/database/connection.d.ts +71 -0
- package/dist/database/connection.d.ts.map +1 -0
- package/dist/database/connection.js +129 -0
- package/dist/database/connection.js.map +1 -0
- package/dist/database/dialect.d.ts +60 -0
- package/dist/database/dialect.d.ts.map +1 -0
- package/dist/database/dialect.js +80 -0
- package/dist/database/dialect.js.map +1 -0
- package/dist/database/migrate.d.ts +5 -2
- package/dist/database/migrate.d.ts.map +1 -1
- package/dist/database/migrate.js +23 -33
- package/dist/database/migrate.js.map +1 -1
- package/dist/database/migration-runner.d.ts +50 -0
- package/dist/database/migration-runner.d.ts.map +1 -0
- package/dist/database/migration-runner.js +143 -0
- package/dist/database/migration-runner.js.map +1 -0
- package/dist/database/migrations/006_login_throttle.d.ts +17 -0
- package/dist/database/migrations/006_login_throttle.d.ts.map +1 -0
- package/dist/database/migrations/006_login_throttle.js +33 -0
- package/dist/database/migrations/006_login_throttle.js.map +1 -0
- package/dist/database/migrations/007_sync_ingested.d.ts +21 -0
- package/dist/database/migrations/007_sync_ingested.d.ts.map +1 -0
- package/dist/database/migrations/007_sync_ingested.js +39 -0
- package/dist/database/migrations/007_sync_ingested.js.map +1 -0
- package/dist/database/migrations/008_node_health_version_text.d.ts +24 -0
- package/dist/database/migrations/008_node_health_version_text.d.ts.map +1 -0
- package/dist/database/migrations/008_node_health_version_text.js +35 -0
- package/dist/database/migrations/008_node_health_version_text.js.map +1 -0
- package/dist/database/migrations/009_node_health_unmeasured.d.ts +40 -0
- package/dist/database/migrations/009_node_health_unmeasured.d.ts.map +1 -0
- package/dist/database/migrations/009_node_health_unmeasured.js +63 -0
- package/dist/database/migrations/009_node_health_unmeasured.js.map +1 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts +22 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts.map +1 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.js +26 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.js.map +1 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts +56 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts.map +1 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.js +79 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.js.map +1 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.d.ts +26 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.d.ts.map +1 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.js +40 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.js.map +1 -0
- package/dist/database/migrations/013_an_alarm_delivered.d.ts +14 -0
- package/dist/database/migrations/013_an_alarm_delivered.d.ts.map +1 -0
- package/dist/database/migrations/013_an_alarm_delivered.js +28 -0
- package/dist/database/migrations/013_an_alarm_delivered.js.map +1 -0
- package/dist/database/migrations/index.d.ts +21 -0
- package/dist/database/migrations/index.d.ts.map +1 -0
- package/dist/database/migrations/index.js +47 -0
- package/dist/database/migrations/index.js.map +1 -0
- package/dist/database/schema.d.ts +27 -11
- package/dist/database/schema.d.ts.map +1 -1
- package/dist/database/sqlite-date-binding.d.ts +71 -0
- package/dist/database/sqlite-date-binding.d.ts.map +1 -0
- package/dist/database/sqlite-date-binding.js +174 -0
- package/dist/database/sqlite-date-binding.js.map +1 -0
- package/dist/execution/data-channel.d.ts +48 -0
- package/dist/execution/data-channel.d.ts.map +1 -0
- package/dist/execution/data-channel.js +55 -0
- package/dist/execution/data-channel.js.map +1 -0
- package/dist/execution/execution.service.d.ts +139 -0
- package/dist/execution/execution.service.d.ts.map +1 -1
- package/dist/execution/execution.service.js +273 -10
- package/dist/execution/execution.service.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/infrastructure/bare-metal-plan.d.ts +208 -0
- package/dist/infrastructure/bare-metal-plan.d.ts.map +1 -0
- package/dist/infrastructure/bare-metal-plan.js +363 -0
- package/dist/infrastructure/bare-metal-plan.js.map +1 -0
- package/dist/infrastructure/bare-metal-runner.d.ts +65 -0
- package/dist/infrastructure/bare-metal-runner.d.ts.map +1 -0
- package/dist/infrastructure/bare-metal-runner.js +354 -0
- package/dist/infrastructure/bare-metal-runner.js.map +1 -0
- package/dist/infrastructure/config-payload.d.ts +149 -0
- package/dist/infrastructure/config-payload.d.ts.map +1 -0
- package/dist/infrastructure/config-payload.js +235 -0
- package/dist/infrastructure/config-payload.js.map +1 -0
- package/dist/infrastructure/container-runtime.d.ts +169 -1
- package/dist/infrastructure/container-runtime.d.ts.map +1 -1
- package/dist/infrastructure/container-runtime.js +525 -33
- package/dist/infrastructure/container-runtime.js.map +1 -1
- package/dist/infrastructure/gateway-reachability.d.ts +85 -0
- package/dist/infrastructure/gateway-reachability.d.ts.map +1 -0
- package/dist/infrastructure/gateway-reachability.js +116 -0
- package/dist/infrastructure/gateway-reachability.js.map +1 -0
- package/dist/infrastructure/gateway-redis-db.d.ts +29 -0
- package/dist/infrastructure/gateway-redis-db.d.ts.map +1 -0
- package/dist/infrastructure/gateway-redis-db.js +32 -0
- package/dist/infrastructure/gateway-redis-db.js.map +1 -0
- package/dist/infrastructure/host-inspection.d.ts +223 -0
- package/dist/infrastructure/host-inspection.d.ts.map +1 -0
- package/dist/infrastructure/host-inspection.js +501 -0
- package/dist/infrastructure/host-inspection.js.map +1 -0
- package/dist/infrastructure/infrastructure-gate.d.ts.map +1 -1
- package/dist/infrastructure/infrastructure.service.d.ts +206 -6
- package/dist/infrastructure/infrastructure.service.d.ts.map +1 -1
- package/dist/infrastructure/infrastructure.service.js +415 -89
- package/dist/infrastructure/infrastructure.service.js.map +1 -1
- package/dist/infrastructure/known-machines.d.ts +76 -0
- package/dist/infrastructure/known-machines.d.ts.map +1 -0
- package/dist/infrastructure/known-machines.js +94 -0
- package/dist/infrastructure/known-machines.js.map +1 -0
- package/dist/infrastructure/node-credentials.d.ts +45 -0
- package/dist/infrastructure/node-credentials.d.ts.map +1 -0
- package/dist/infrastructure/node-credentials.js +80 -0
- package/dist/infrastructure/node-credentials.js.map +1 -0
- package/dist/infrastructure/orphan-containers.d.ts +99 -0
- package/dist/infrastructure/orphan-containers.d.ts.map +1 -0
- package/dist/infrastructure/orphan-containers.js +106 -0
- package/dist/infrastructure/orphan-containers.js.map +1 -0
- package/dist/infrastructure/phantom-endpoint-janitor.d.ts +20 -0
- package/dist/infrastructure/phantom-endpoint-janitor.d.ts.map +1 -1
- package/dist/infrastructure/phantom-endpoint-janitor.js +56 -6
- package/dist/infrastructure/phantom-endpoint-janitor.js.map +1 -1
- package/dist/infrastructure/presets/gateway-openresty.d.ts.map +1 -1
- package/dist/infrastructure/presets/gateway-openresty.js +29 -3
- package/dist/infrastructure/presets/gateway-openresty.js.map +1 -1
- package/dist/infrastructure/presets/minio.d.ts.map +1 -1
- package/dist/infrastructure/presets/minio.js +36 -3
- package/dist/infrastructure/presets/minio.js.map +1 -1
- package/dist/infrastructure/presets/postgres.d.ts.map +1 -1
- package/dist/infrastructure/presets/postgres.js +69 -2
- package/dist/infrastructure/presets/postgres.js.map +1 -1
- package/dist/infrastructure/presets/redis.d.ts.map +1 -1
- package/dist/infrastructure/presets/redis.js +13 -0
- package/dist/infrastructure/presets/redis.js.map +1 -1
- package/dist/infrastructure/presets/registry.d.ts.map +1 -1
- package/dist/infrastructure/presets/registry.js +81 -12
- package/dist/infrastructure/presets/registry.js.map +1 -1
- package/dist/infrastructure/presets/tor.d.ts +38 -0
- package/dist/infrastructure/presets/tor.d.ts.map +1 -1
- package/dist/infrastructure/presets/tor.js +78 -69
- package/dist/infrastructure/presets/tor.js.map +1 -1
- package/dist/infrastructure/presets/torrc.d.ts +54 -0
- package/dist/infrastructure/presets/torrc.d.ts.map +1 -0
- package/dist/infrastructure/presets/torrc.js +153 -0
- package/dist/infrastructure/presets/torrc.js.map +1 -0
- package/dist/infrastructure/presets/types.d.ts +17 -0
- package/dist/infrastructure/presets/types.d.ts.map +1 -1
- package/dist/infrastructure/provisioning-outcome.d.ts +85 -0
- package/dist/infrastructure/provisioning-outcome.d.ts.map +1 -0
- package/dist/infrastructure/provisioning-outcome.js +122 -0
- package/dist/infrastructure/provisioning-outcome.js.map +1 -0
- package/dist/infrastructure/server-registry.d.ts +27 -0
- package/dist/infrastructure/server-registry.d.ts.map +1 -1
- package/dist/infrastructure/server-registry.js +60 -5
- package/dist/infrastructure/server-registry.js.map +1 -1
- package/dist/infrastructure/service-binding.d.ts +60 -0
- package/dist/infrastructure/service-binding.d.ts.map +1 -0
- package/dist/infrastructure/service-binding.js +90 -0
- package/dist/infrastructure/service-binding.js.map +1 -0
- package/dist/infrastructure/service-credentials.d.ts +105 -0
- package/dist/infrastructure/service-credentials.d.ts.map +1 -0
- package/dist/infrastructure/service-credentials.js +141 -0
- package/dist/infrastructure/service-credentials.js.map +1 -0
- package/dist/infrastructure/service-resolver.d.ts +160 -12
- package/dist/infrastructure/service-resolver.d.ts.map +1 -1
- package/dist/infrastructure/service-resolver.js +463 -53
- package/dist/infrastructure/service-resolver.js.map +1 -1
- package/dist/infrastructure/shipped-config.d.ts +43 -0
- package/dist/infrastructure/shipped-config.d.ts.map +1 -0
- package/dist/infrastructure/shipped-config.js +159 -0
- package/dist/infrastructure/shipped-config.js.map +1 -0
- package/dist/infrastructure/stack-infra-manager.d.ts +6 -0
- package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -1
- package/dist/infrastructure/stack-infra-manager.js +31 -13
- package/dist/infrastructure/stack-infra-manager.js.map +1 -1
- package/dist/infrastructure/types.d.ts +261 -6
- package/dist/infrastructure/types.d.ts.map +1 -1
- package/dist/mcp/mcp-bridge.d.ts.map +1 -1
- package/dist/mcp/mcp-bridge.js.map +1 -1
- package/dist/mcp/tool-groups/apps.tools.d.ts +2 -1
- package/dist/mcp/tool-groups/apps.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/apps.tools.js +2 -2
- package/dist/mcp/tool-groups/apps.tools.js.map +1 -1
- package/dist/mcp/tool-groups/infra.tools.d.ts +16 -2
- package/dist/mcp/tool-groups/infra.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/infra.tools.js +51 -41
- package/dist/mcp/tool-groups/infra.tools.js.map +1 -1
- package/dist/mcp/tool-groups/kb.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/kb.tools.js +4 -6
- package/dist/mcp/tool-groups/kb.tools.js.map +1 -1
- package/dist/mcp/tool-groups/management.tools.d.ts +20 -3
- package/dist/mcp/tool-groups/management.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/management.tools.js +158 -125
- package/dist/mcp/tool-groups/management.tools.js.map +1 -1
- package/dist/mcp/tool-groups/monitoring.tools.d.ts +10 -1
- package/dist/mcp/tool-groups/monitoring.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/monitoring.tools.js +65 -18
- package/dist/mcp/tool-groups/monitoring.tools.js.map +1 -1
- package/dist/mcp/unavailable-tools.d.ts +35 -0
- package/dist/mcp/unavailable-tools.d.ts.map +1 -0
- package/dist/mcp/unavailable-tools.js +59 -0
- package/dist/mcp/unavailable-tools.js.map +1 -0
- package/dist/monitoring/app-health.indicator.d.ts.map +1 -1
- package/dist/monitoring/app-health.indicator.js +12 -0
- package/dist/monitoring/app-health.indicator.js.map +1 -1
- package/dist/monitoring/desktop-notifier.d.ts +26 -0
- package/dist/monitoring/desktop-notifier.d.ts.map +1 -0
- package/dist/monitoring/desktop-notifier.js +49 -0
- package/dist/monitoring/desktop-notifier.js.map +1 -0
- package/dist/monitoring/docker-health.indicator.d.ts +17 -1
- package/dist/monitoring/docker-health.indicator.d.ts.map +1 -1
- package/dist/monitoring/docker-health.indicator.js +38 -8
- package/dist/monitoring/docker-health.indicator.js.map +1 -1
- package/dist/monitoring/event-loop-stall.indicator.d.ts +26 -0
- package/dist/monitoring/event-loop-stall.indicator.d.ts.map +1 -0
- package/dist/monitoring/event-loop-stall.indicator.js +47 -0
- package/dist/monitoring/event-loop-stall.indicator.js.map +1 -0
- package/dist/monitoring/event-loop-watch.d.ts +124 -0
- package/dist/monitoring/event-loop-watch.d.ts.map +1 -0
- package/dist/monitoring/event-loop-watch.js +179 -0
- package/dist/monitoring/event-loop-watch.js.map +1 -0
- package/dist/monitoring/host-disk.d.ts +6 -0
- package/dist/monitoring/host-disk.d.ts.map +1 -0
- package/dist/monitoring/host-disk.js +26 -0
- package/dist/monitoring/host-disk.js.map +1 -0
- package/dist/monitoring/log-line.d.ts +188 -0
- package/dist/monitoring/log-line.d.ts.map +1 -0
- package/dist/monitoring/log-line.js +458 -0
- package/dist/monitoring/log-line.js.map +1 -0
- package/dist/monitoring/log-manager.d.ts +89 -8
- package/dist/monitoring/log-manager.d.ts.map +1 -1
- package/dist/monitoring/log-manager.js +246 -77
- package/dist/monitoring/log-manager.js.map +1 -1
- package/dist/observability/metrics-bridge.d.ts.map +1 -1
- package/dist/observability/metrics-server.d.ts.map +1 -1
- package/dist/orchestrator/app-handle.d.ts +157 -2
- package/dist/orchestrator/app-handle.d.ts.map +1 -1
- package/dist/orchestrator/app-handle.js +165 -3
- package/dist/orchestrator/app-handle.js.map +1 -1
- package/dist/orchestrator/app-health.d.ts +33 -0
- package/dist/orchestrator/app-health.d.ts.map +1 -0
- package/dist/orchestrator/app-health.js +74 -0
- package/dist/orchestrator/app-health.js.map +1 -0
- package/dist/orchestrator/app-traffic.d.ts +14 -0
- package/dist/orchestrator/app-traffic.d.ts.map +1 -0
- package/dist/orchestrator/app-traffic.js +33 -0
- package/dist/orchestrator/app-traffic.js.map +1 -0
- package/dist/orchestrator/bootstrap-loader-child.d.ts +19 -0
- package/dist/orchestrator/bootstrap-loader-child.d.ts.map +1 -0
- package/dist/orchestrator/bootstrap-loader-child.js +43 -0
- package/dist/orchestrator/bootstrap-loader-child.js.map +1 -0
- package/dist/orchestrator/bootstrap-loader.d.ts +72 -0
- package/dist/orchestrator/bootstrap-loader.d.ts.map +1 -1
- package/dist/orchestrator/bootstrap-loader.js +350 -5
- package/dist/orchestrator/bootstrap-loader.js.map +1 -1
- package/dist/orchestrator/bootstrap-process.d.ts +99 -4
- package/dist/orchestrator/bootstrap-process.d.ts.map +1 -1
- package/dist/orchestrator/bootstrap-process.js +330 -19
- package/dist/orchestrator/bootstrap-process.js.map +1 -1
- package/dist/orchestrator/build-service.d.ts.map +1 -1
- package/dist/orchestrator/build-service.js.map +1 -1
- package/dist/orchestrator/call-exposed-service.d.ts +7 -0
- package/dist/orchestrator/call-exposed-service.d.ts.map +1 -0
- package/dist/orchestrator/call-exposed-service.js +50 -0
- package/dist/orchestrator/call-exposed-service.js.map +1 -0
- package/dist/orchestrator/classic-launcher.d.ts +1 -0
- package/dist/orchestrator/classic-launcher.d.ts.map +1 -1
- package/dist/orchestrator/classic-launcher.js +34 -3
- package/dist/orchestrator/classic-launcher.js.map +1 -1
- package/dist/orchestrator/file-watcher.d.ts +78 -1
- package/dist/orchestrator/file-watcher.d.ts.map +1 -1
- package/dist/orchestrator/file-watcher.js +181 -6
- package/dist/orchestrator/file-watcher.js.map +1 -1
- package/dist/orchestrator/module-worker-process.d.ts.map +1 -1
- package/dist/orchestrator/module-worker-process.js +10 -0
- package/dist/orchestrator/module-worker-process.js.map +1 -1
- package/dist/orchestrator/orchestrator.service.d.ts +371 -11
- package/dist/orchestrator/orchestrator.service.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator.service.js +1602 -269
- package/dist/orchestrator/orchestrator.service.js.map +1 -1
- package/dist/orchestrator/owned-pids.d.ts +83 -0
- package/dist/orchestrator/owned-pids.d.ts.map +1 -0
- package/dist/orchestrator/owned-pids.js +93 -0
- package/dist/orchestrator/owned-pids.js.map +1 -0
- package/dist/orchestrator/port-conflict.d.ts +102 -0
- package/dist/orchestrator/port-conflict.d.ts.map +1 -0
- package/dist/orchestrator/port-conflict.js +131 -0
- package/dist/orchestrator/port-conflict.js.map +1 -0
- package/dist/orchestrator/process-janitor.d.ts +78 -4
- package/dist/orchestrator/process-janitor.d.ts.map +1 -1
- package/dist/orchestrator/process-janitor.js +246 -30
- package/dist/orchestrator/process-janitor.js.map +1 -1
- package/dist/orchestrator/ps-metrics.d.ts +37 -0
- package/dist/orchestrator/ps-metrics.d.ts.map +1 -0
- package/dist/orchestrator/ps-metrics.js +60 -0
- package/dist/orchestrator/ps-metrics.js.map +1 -0
- package/dist/orchestrator/service-router.d.ts +58 -2
- package/dist/orchestrator/service-router.d.ts.map +1 -1
- package/dist/orchestrator/service-router.js +157 -25
- package/dist/orchestrator/service-router.js.map +1 -1
- package/dist/orchestrator/topology-query.d.ts +49 -0
- package/dist/orchestrator/topology-query.d.ts.map +1 -0
- package/dist/orchestrator/topology-query.js +54 -0
- package/dist/orchestrator/topology-query.js.map +1 -0
- package/dist/project/artifact-builder.d.ts +174 -3
- package/dist/project/artifact-builder.d.ts.map +1 -1
- package/dist/project/artifact-builder.js +454 -42
- package/dist/project/artifact-builder.js.map +1 -1
- package/dist/project/build-decision.d.ts +58 -0
- package/dist/project/build-decision.d.ts.map +1 -0
- package/dist/project/build-decision.js +59 -0
- package/dist/project/build-decision.js.map +1 -0
- package/dist/project/config-resolver.d.ts +6 -4
- package/dist/project/config-resolver.d.ts.map +1 -1
- package/dist/project/config-resolver.js +128 -74
- package/dist/project/config-resolver.js.map +1 -1
- package/dist/project/declared-config.d.ts +42 -0
- package/dist/project/declared-config.d.ts.map +1 -0
- package/dist/project/declared-config.js +60 -0
- package/dist/project/declared-config.js.map +1 -0
- package/dist/project/dependency-analyzer.d.ts.map +1 -1
- package/dist/project/dependency-analyzer.js.map +1 -1
- package/dist/project/deploy-phases.d.ts +35 -0
- package/dist/project/deploy-phases.d.ts.map +1 -0
- package/dist/project/deploy-phases.js +75 -0
- package/dist/project/deploy-phases.js.map +1 -0
- package/dist/project/exec-in-group.d.ts +49 -0
- package/dist/project/exec-in-group.d.ts.map +1 -0
- package/dist/project/exec-in-group.js +100 -0
- package/dist/project/exec-in-group.js.map +1 -0
- package/dist/project/node-app-config.d.ts +101 -0
- package/dist/project/node-app-config.d.ts.map +1 -0
- package/dist/project/node-app-config.js +134 -0
- package/dist/project/node-app-config.js.map +1 -0
- package/dist/project/node-app-health.d.ts +76 -0
- package/dist/project/node-app-health.d.ts.map +1 -0
- package/dist/project/node-app-health.js +119 -0
- package/dist/project/node-app-health.js.map +1 -0
- package/dist/project/operator-account.d.ts +287 -0
- package/dist/project/operator-account.d.ts.map +1 -0
- package/dist/project/operator-account.js +373 -0
- package/dist/project/operator-account.js.map +1 -0
- package/dist/project/registry.d.ts +45 -8
- package/dist/project/registry.d.ts.map +1 -1
- package/dist/project/registry.js +217 -49
- package/dist/project/registry.js.map +1 -1
- package/dist/project/requirements-scanner.d.ts +1 -0
- package/dist/project/requirements-scanner.d.ts.map +1 -1
- package/dist/project/requirements-scanner.js +28 -3
- package/dist/project/requirements-scanner.js.map +1 -1
- package/dist/project/stack-env.d.ts +37 -0
- package/dist/project/stack-env.d.ts.map +1 -0
- package/dist/project/stack-env.js +85 -0
- package/dist/project/stack-env.js.map +1 -0
- package/dist/project/stand-containers.d.ts +4 -0
- package/dist/project/stand-containers.d.ts.map +1 -0
- package/dist/project/stand-containers.js +27 -0
- package/dist/project/stand-containers.js.map +1 -0
- package/dist/project/working-tree.d.ts +62 -0
- package/dist/project/working-tree.d.ts.map +1 -0
- package/dist/project/working-tree.js +101 -0
- package/dist/project/working-tree.js.map +1 -0
- package/dist/release/artifact-store.d.ts +360 -0
- package/dist/release/artifact-store.d.ts.map +1 -0
- package/dist/release/artifact-store.js +1040 -0
- package/dist/release/artifact-store.js.map +1 -0
- package/dist/release/attest-on-node.d.ts +92 -0
- package/dist/release/attest-on-node.d.ts.map +1 -0
- package/dist/release/attest-on-node.js +207 -0
- package/dist/release/attest-on-node.js.map +1 -0
- package/dist/release/attest.d.ts +135 -0
- package/dist/release/attest.d.ts.map +1 -0
- package/dist/release/attest.js +199 -0
- package/dist/release/attest.js.map +1 -0
- package/dist/release/build-run.d.ts +151 -0
- package/dist/release/build-run.d.ts.map +1 -0
- package/dist/release/build-run.js +609 -0
- package/dist/release/build-run.js.map +1 -0
- package/dist/release/builder.d.ts +57 -0
- package/dist/release/builder.d.ts.map +1 -0
- package/dist/release/builder.js +120 -0
- package/dist/release/builder.js.map +1 -0
- package/dist/release/daemon-omni.d.ts +41 -0
- package/dist/release/daemon-omni.d.ts.map +1 -0
- package/dist/release/daemon-omni.js +59 -0
- package/dist/release/daemon-omni.js.map +1 -0
- package/dist/release/definition-inputs.d.ts +34 -0
- package/dist/release/definition-inputs.d.ts.map +1 -0
- package/dist/release/definition-inputs.js +90 -0
- package/dist/release/definition-inputs.js.map +1 -0
- package/dist/release/delivered.d.ts +53 -0
- package/dist/release/delivered.d.ts.map +1 -0
- package/dist/release/delivered.js +81 -0
- package/dist/release/delivered.js.map +1 -0
- package/dist/release/layout.d.ts +61 -0
- package/dist/release/layout.d.ts.map +1 -0
- package/dist/release/layout.js +114 -0
- package/dist/release/layout.js.map +1 -0
- package/dist/release/load.d.ts +44 -0
- package/dist/release/load.d.ts.map +1 -0
- package/dist/release/load.js +84 -0
- package/dist/release/load.js.map +1 -0
- package/dist/release/manifest.d.ts +299 -0
- package/dist/release/manifest.d.ts.map +1 -0
- package/dist/release/manifest.js +176 -0
- package/dist/release/manifest.js.map +1 -0
- package/dist/release/migrations.d.ts +32 -0
- package/dist/release/migrations.d.ts.map +1 -0
- package/dist/release/migrations.js +51 -0
- package/dist/release/migrations.js.map +1 -0
- package/dist/release/publish.d.ts +71 -0
- package/dist/release/publish.d.ts.map +1 -0
- package/dist/release/publish.js +102 -0
- package/dist/release/publish.js.map +1 -0
- package/dist/release/store.d.ts +174 -0
- package/dist/release/store.d.ts.map +1 -0
- package/dist/release/store.js +257 -0
- package/dist/release/store.js.map +1 -0
- package/dist/services/alert.rpc-service.d.ts +11 -15
- package/dist/services/alert.rpc-service.d.ts.map +1 -1
- package/dist/services/alert.rpc-service.js +29 -14
- package/dist/services/alert.rpc-service.js.map +1 -1
- package/dist/services/alert.service.d.ts +96 -59
- package/dist/services/alert.service.d.ts.map +1 -1
- package/dist/services/alert.service.js +455 -70
- package/dist/services/alert.service.js.map +1 -1
- package/dist/services/anonymous-input.d.ts +26 -0
- package/dist/services/anonymous-input.d.ts.map +1 -0
- package/dist/services/anonymous-input.js +44 -0
- package/dist/services/anonymous-input.js.map +1 -0
- package/dist/services/audit.rpc-service.d.ts +27 -0
- package/dist/services/audit.rpc-service.d.ts.map +1 -0
- package/dist/services/audit.rpc-service.js +57 -0
- package/dist/services/audit.rpc-service.js.map +1 -0
- package/dist/services/audit.service.d.ts +165 -0
- package/dist/services/audit.service.d.ts.map +1 -0
- package/dist/services/audit.service.js +242 -0
- package/dist/services/audit.service.js.map +1 -0
- package/dist/services/auth-context.d.ts +21 -1
- package/dist/services/auth-context.d.ts.map +1 -1
- package/dist/services/auth-context.js +51 -5
- package/dist/services/auth-context.js.map +1 -1
- package/dist/services/auth.rpc-service.d.ts +0 -1
- package/dist/services/auth.rpc-service.d.ts.map +1 -1
- package/dist/services/auth.rpc-service.js +23 -9
- package/dist/services/auth.rpc-service.js.map +1 -1
- package/dist/services/auth.service.d.ts +47 -33
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +155 -23
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/backup-pipeline.d.ts +97 -0
- package/dist/services/backup-pipeline.d.ts.map +1 -0
- package/dist/services/backup-pipeline.js +286 -0
- package/dist/services/backup-pipeline.js.map +1 -0
- package/dist/services/backup-schedule.d.ts +69 -0
- package/dist/services/backup-schedule.d.ts.map +1 -0
- package/dist/services/backup-schedule.js +132 -0
- package/dist/services/backup-schedule.js.map +1 -0
- package/dist/services/backup.rpc-service.d.ts +31 -2
- package/dist/services/backup.rpc-service.d.ts.map +1 -1
- package/dist/services/backup.rpc-service.js +53 -0
- package/dist/services/backup.rpc-service.js.map +1 -1
- package/dist/services/backup.service.d.ts +458 -14
- package/dist/services/backup.service.d.ts.map +1 -1
- package/dist/services/backup.service.js +1368 -170
- package/dist/services/backup.service.js.map +1 -1
- package/dist/services/bundle-build-worker.d.ts +19 -0
- package/dist/services/bundle-build-worker.d.ts.map +1 -0
- package/dist/services/bundle-build-worker.js +40 -0
- package/dist/services/bundle-build-worker.js.map +1 -0
- package/dist/services/bundle-builder.d.ts +487 -0
- package/dist/services/bundle-builder.d.ts.map +1 -0
- package/dist/services/bundle-builder.js +1083 -0
- package/dist/services/bundle-builder.js.map +1 -0
- package/dist/services/bundle-worker-protocol.d.ts +19 -0
- package/dist/services/bundle-worker-protocol.d.ts.map +1 -0
- package/dist/services/bundle-worker-protocol.js +32 -0
- package/dist/services/bundle-worker-protocol.js.map +1 -0
- package/dist/services/deploy.rpc-service.d.ts +4 -1
- package/dist/services/deploy.rpc-service.d.ts.map +1 -1
- package/dist/services/deploy.rpc-service.js +10 -0
- package/dist/services/deploy.rpc-service.js.map +1 -1
- package/dist/services/deploy.service.d.ts +14 -24
- package/dist/services/deploy.service.d.ts.map +1 -1
- package/dist/services/deploy.service.js +46 -5
- package/dist/services/deploy.service.js.map +1 -1
- package/dist/services/discovery.rpc-service.d.ts +2 -1
- package/dist/services/discovery.rpc-service.d.ts.map +1 -1
- package/dist/services/discovery.rpc-service.js.map +1 -1
- package/dist/services/discovery.service.d.ts +32 -28
- package/dist/services/discovery.service.d.ts.map +1 -1
- package/dist/services/discovery.service.js +108 -133
- package/dist/services/discovery.service.js.map +1 -1
- package/dist/services/event-broadcaster.rpc-service.d.ts +36 -23
- package/dist/services/event-broadcaster.rpc-service.d.ts.map +1 -1
- package/dist/services/event-broadcaster.rpc-service.js +70 -32
- package/dist/services/event-broadcaster.rpc-service.js.map +1 -1
- package/dist/services/event-broadcaster.service.d.ts.map +1 -1
- package/dist/services/event-broadcaster.service.js.map +1 -1
- package/dist/services/fleet.rpc-service.d.ts +2 -1
- package/dist/services/fleet.rpc-service.d.ts.map +1 -1
- package/dist/services/fleet.rpc-service.js +3 -1
- package/dist/services/fleet.rpc-service.js.map +1 -1
- package/dist/services/fleet.service.d.ts +32 -34
- package/dist/services/fleet.service.d.ts.map +1 -1
- package/dist/services/fleet.service.js +66 -10
- package/dist/services/fleet.service.js.map +1 -1
- package/dist/services/health-check.rpc-service.d.ts +2 -1
- package/dist/services/health-check.rpc-service.d.ts.map +1 -1
- package/dist/services/health-check.rpc-service.js.map +1 -1
- package/dist/services/health-check.service.d.ts +50 -36
- package/dist/services/health-check.service.d.ts.map +1 -1
- package/dist/services/health-check.service.js +179 -182
- package/dist/services/health-check.service.js.map +1 -1
- package/dist/services/infrastructure.rpc-service.d.ts +297 -2
- package/dist/services/infrastructure.rpc-service.d.ts.map +1 -1
- package/dist/services/infrastructure.rpc-service.js +523 -11
- package/dist/services/infrastructure.rpc-service.js.map +1 -1
- package/dist/services/kubernetes.rpc-service.d.ts +2 -1
- package/dist/services/kubernetes.rpc-service.d.ts.map +1 -1
- package/dist/services/kubernetes.rpc-service.js.map +1 -1
- package/dist/services/kubernetes.service.d.ts +5 -39
- package/dist/services/kubernetes.service.d.ts.map +1 -1
- package/dist/services/kubernetes.service.js +29 -5
- package/dist/services/kubernetes.service.js.map +1 -1
- package/dist/services/local-bundle.d.ts +151 -0
- package/dist/services/local-bundle.d.ts.map +1 -0
- package/dist/services/local-bundle.js +233 -0
- package/dist/services/local-bundle.js.map +1 -0
- package/dist/services/lockout.d.ts +28 -0
- package/dist/services/lockout.d.ts.map +1 -0
- package/dist/services/lockout.js +41 -0
- package/dist/services/lockout.js.map +1 -0
- package/dist/services/log-collector.rpc-service.d.ts +16 -0
- package/dist/services/log-collector.rpc-service.d.ts.map +1 -1
- package/dist/services/log-collector.rpc-service.js +16 -0
- package/dist/services/log-collector.rpc-service.js.map +1 -1
- package/dist/services/log-collector.service.d.ts +172 -54
- package/dist/services/log-collector.service.d.ts.map +1 -1
- package/dist/services/log-collector.service.js +492 -102
- package/dist/services/log-collector.service.js.map +1 -1
- package/dist/services/log-retention.d.ts +50 -0
- package/dist/services/log-retention.d.ts.map +1 -0
- package/dist/services/log-retention.js +52 -0
- package/dist/services/log-retention.js.map +1 -0
- package/dist/services/maintenance-lock.d.ts +162 -0
- package/dist/services/maintenance-lock.d.ts.map +1 -0
- package/dist/services/maintenance-lock.js +316 -0
- package/dist/services/maintenance-lock.js.map +1 -0
- package/dist/services/master-address.d.ts +107 -0
- package/dist/services/master-address.d.ts.map +1 -0
- package/dist/services/master-address.js +154 -0
- package/dist/services/master-address.js.map +1 -0
- package/dist/services/migration-output.d.ts +16 -0
- package/dist/services/migration-output.d.ts.map +1 -0
- package/dist/services/migration-output.js +22 -0
- package/dist/services/migration-output.js.map +1 -0
- package/dist/services/netron-telemetry-transport.d.ts.map +1 -1
- package/dist/services/netron-telemetry-transport.js.map +1 -1
- package/dist/services/node-deploy-lease.d.ts +154 -0
- package/dist/services/node-deploy-lease.d.ts.map +1 -0
- package/dist/services/node-deploy-lease.js +386 -0
- package/dist/services/node-deploy-lease.js.map +1 -0
- package/dist/services/node-health.repository.d.ts +63 -4
- package/dist/services/node-health.repository.d.ts.map +1 -1
- package/dist/services/node-health.repository.js +108 -67
- package/dist/services/node-health.repository.js.map +1 -1
- package/dist/services/node-manager.rpc-service.d.ts +355 -10
- package/dist/services/node-manager.rpc-service.d.ts.map +1 -1
- package/dist/services/node-manager.rpc-service.js +730 -34
- package/dist/services/node-manager.rpc-service.js.map +1 -1
- package/dist/services/node-manager.service.d.ts +267 -95
- package/dist/services/node-manager.service.d.ts.map +1 -1
- package/dist/services/node-manager.service.js +805 -103
- package/dist/services/node-manager.service.js.map +1 -1
- package/dist/services/node-upgrade.d.ts +129 -0
- package/dist/services/node-upgrade.d.ts.map +1 -0
- package/dist/services/node-upgrade.js +161 -0
- package/dist/services/node-upgrade.js.map +1 -0
- package/dist/services/node-upgrade.service.d.ts +232 -0
- package/dist/services/node-upgrade.service.d.ts.map +1 -0
- package/dist/services/node-upgrade.service.js +468 -0
- package/dist/services/node-upgrade.service.js.map +1 -0
- package/dist/services/pipeline.rpc-service.d.ts +2 -1
- package/dist/services/pipeline.rpc-service.d.ts.map +1 -1
- package/dist/services/pipeline.rpc-service.js.map +1 -1
- package/dist/services/pipeline.service.d.ts +15 -46
- package/dist/services/pipeline.service.d.ts.map +1 -1
- package/dist/services/pipeline.service.js +72 -9
- package/dist/services/pipeline.service.js.map +1 -1
- package/dist/services/project.rpc-service.d.ts +133 -5
- package/dist/services/project.rpc-service.d.ts.map +1 -1
- package/dist/services/project.rpc-service.js +249 -22
- package/dist/services/project.rpc-service.js.map +1 -1
- package/dist/services/project.service.d.ts +677 -15
- package/dist/services/project.service.d.ts.map +1 -1
- package/dist/services/project.service.js +2798 -304
- package/dist/services/project.service.js.map +1 -1
- package/dist/services/redeploy-decision.d.ts +176 -0
- package/dist/services/redeploy-decision.d.ts.map +1 -0
- package/dist/services/redeploy-decision.js +142 -0
- package/dist/services/redeploy-decision.js.map +1 -0
- package/dist/services/release.rpc-service.d.ts +159 -0
- package/dist/services/release.rpc-service.d.ts.map +1 -0
- package/dist/services/release.rpc-service.js +395 -0
- package/dist/services/release.rpc-service.js.map +1 -0
- package/dist/services/release.service.d.ts +114 -0
- package/dist/services/release.service.d.ts.map +1 -0
- package/dist/services/release.service.js +208 -0
- package/dist/services/release.service.js.map +1 -0
- package/dist/services/remote-deployer.service.d.ts +569 -8
- package/dist/services/remote-deployer.service.d.ts.map +1 -1
- package/dist/services/remote-deployer.service.js +1618 -169
- package/dist/services/remote-deployer.service.js.map +1 -1
- package/dist/services/remote-ops.service.d.ts +51 -9
- package/dist/services/remote-ops.service.d.ts.map +1 -1
- package/dist/services/remote-ops.service.js +235 -39
- package/dist/services/remote-ops.service.js.map +1 -1
- package/dist/services/remote-provisioner.d.ts +122 -0
- package/dist/services/remote-provisioner.d.ts.map +1 -0
- package/dist/services/remote-provisioner.js +258 -0
- package/dist/services/remote-provisioner.js.map +1 -0
- package/dist/services/secrets.rpc-service.d.ts +51 -2
- package/dist/services/secrets.rpc-service.d.ts.map +1 -1
- package/dist/services/secrets.rpc-service.js +81 -2
- package/dist/services/secrets.rpc-service.js.map +1 -1
- package/dist/services/secrets.service.d.ts +108 -9
- package/dist/services/secrets.service.d.ts.map +1 -1
- package/dist/services/secrets.service.js +313 -48
- package/dist/services/secrets.service.js.map +1 -1
- package/dist/services/slave-storage.service.d.ts +107 -0
- package/dist/services/slave-storage.service.d.ts.map +1 -1
- package/dist/services/slave-storage.service.js +171 -2
- package/dist/services/slave-storage.service.js.map +1 -1
- package/dist/services/static-carry-forward.d.ts +85 -0
- package/dist/services/static-carry-forward.d.ts.map +1 -0
- package/dist/services/static-carry-forward.js +159 -0
- package/dist/services/static-carry-forward.js.map +1 -0
- package/dist/services/sync-policy.d.ts +167 -0
- package/dist/services/sync-policy.d.ts.map +1 -0
- package/dist/services/sync-policy.js +161 -0
- package/dist/services/sync-policy.js.map +1 -0
- package/dist/services/sync-summary.d.ts +39 -0
- package/dist/services/sync-summary.d.ts.map +1 -0
- package/dist/services/sync-summary.js +62 -0
- package/dist/services/sync-summary.js.map +1 -0
- package/dist/services/sync.rpc-service.d.ts +19 -7
- package/dist/services/sync.rpc-service.d.ts.map +1 -1
- package/dist/services/sync.rpc-service.js +36 -5
- package/dist/services/sync.rpc-service.js.map +1 -1
- package/dist/services/sync.service.d.ts +350 -18
- package/dist/services/sync.service.d.ts.map +1 -1
- package/dist/services/sync.service.js +864 -116
- package/dist/services/sync.service.js.map +1 -1
- package/dist/services/system-info.rpc-service.d.ts +2 -1
- package/dist/services/system-info.rpc-service.d.ts.map +1 -1
- package/dist/services/system-info.rpc-service.js.map +1 -1
- package/dist/services/system-info.service.d.ts +56 -68
- package/dist/services/system-info.service.d.ts.map +1 -1
- package/dist/services/system-info.service.js +240 -127
- package/dist/services/system-info.service.js.map +1 -1
- package/dist/services/telemetry.rpc-service.d.ts.map +1 -1
- package/dist/services/telemetry.rpc-service.js +9 -3
- package/dist/services/telemetry.rpc-service.js.map +1 -1
- package/dist/services/telemetry.service.d.ts +4 -2
- package/dist/services/telemetry.service.d.ts.map +1 -1
- package/dist/services/telemetry.service.js +4 -2
- package/dist/services/telemetry.service.js.map +1 -1
- package/dist/services/trace-collector.rpc-service.d.ts +2 -1
- package/dist/services/trace-collector.rpc-service.d.ts.map +1 -1
- package/dist/services/trace-collector.rpc-service.js.map +1 -1
- package/dist/services/trace-collector.service.d.ts +2 -41
- package/dist/services/trace-collector.service.d.ts.map +1 -1
- package/dist/services/trace-collector.service.js +27 -7
- package/dist/services/trace-collector.service.js.map +1 -1
- package/dist/services/wait-for-postgres.d.ts +28 -0
- package/dist/services/wait-for-postgres.d.ts.map +1 -0
- package/dist/services/wait-for-postgres.js +77 -0
- package/dist/services/wait-for-postgres.js.map +1 -0
- package/dist/shared/alert-expression.d.ts +60 -0
- package/dist/shared/alert-expression.d.ts.map +1 -0
- package/dist/shared/alert-expression.js +124 -0
- package/dist/shared/alert-expression.js.map +1 -0
- package/dist/shared/audit-outcome.d.ts +39 -0
- package/dist/shared/audit-outcome.d.ts.map +1 -0
- package/dist/shared/audit-outcome.js +45 -0
- package/dist/shared/audit-outcome.js.map +1 -0
- package/dist/shared/build-freshness.d.ts +59 -0
- package/dist/shared/build-freshness.d.ts.map +1 -0
- package/dist/shared/build-freshness.js +113 -0
- package/dist/shared/build-freshness.js.map +1 -0
- package/dist/shared/build-stamp.d.ts +26 -0
- package/dist/shared/build-stamp.d.ts.map +1 -0
- package/dist/shared/build-stamp.js +36 -0
- package/dist/shared/build-stamp.js.map +1 -0
- package/dist/shared/describe-error.d.ts +22 -0
- package/dist/shared/describe-error.d.ts.map +1 -0
- package/dist/shared/describe-error.js +39 -0
- package/dist/shared/describe-error.js.map +1 -0
- package/dist/shared/dto/alerts.d.ts +101 -0
- package/dist/shared/dto/alerts.d.ts.map +1 -0
- package/dist/shared/dto/alerts.js +9 -0
- package/dist/shared/dto/alerts.js.map +1 -0
- package/dist/shared/dto/auth.d.ts +49 -0
- package/dist/shared/dto/auth.d.ts.map +1 -0
- package/dist/shared/dto/auth.js +14 -0
- package/dist/shared/dto/auth.js.map +1 -0
- package/dist/shared/dto/backups.d.ts +16 -0
- package/dist/shared/dto/backups.d.ts.map +1 -0
- package/dist/shared/dto/backups.js +9 -0
- package/dist/shared/dto/backups.js.map +1 -0
- package/dist/shared/dto/deploy.d.ts +28 -0
- package/dist/shared/dto/deploy.d.ts.map +1 -0
- package/dist/shared/dto/deploy.js +8 -0
- package/dist/shared/dto/deploy.js.map +1 -0
- package/dist/shared/dto/discovery.d.ts +24 -0
- package/dist/shared/dto/discovery.d.ts.map +1 -0
- package/dist/shared/dto/discovery.js +9 -0
- package/dist/shared/dto/discovery.js.map +1 -0
- package/dist/shared/dto/fleet.d.ts +35 -0
- package/dist/shared/dto/fleet.d.ts.map +1 -0
- package/dist/shared/dto/fleet.js +8 -0
- package/dist/shared/dto/fleet.js.map +1 -0
- package/dist/shared/dto/health.d.ts +26 -0
- package/dist/shared/dto/health.d.ts.map +1 -0
- package/dist/shared/dto/health.js +9 -0
- package/dist/shared/dto/health.js.map +1 -0
- package/dist/shared/dto/kubernetes.d.ts +44 -0
- package/dist/shared/dto/kubernetes.d.ts.map +1 -0
- package/dist/shared/dto/kubernetes.js +9 -0
- package/dist/shared/dto/kubernetes.js.map +1 -0
- package/dist/shared/dto/logs.d.ts +77 -0
- package/dist/shared/dto/logs.d.ts.map +1 -0
- package/dist/shared/dto/logs.js +10 -0
- package/dist/shared/dto/logs.js.map +1 -0
- package/dist/shared/dto/metrics.d.ts +65 -0
- package/dist/shared/dto/metrics.d.ts.map +1 -0
- package/dist/shared/dto/metrics.js +17 -0
- package/dist/shared/dto/metrics.js.map +1 -0
- package/dist/shared/dto/nodes.d.ts +347 -0
- package/dist/shared/dto/nodes.d.ts.map +1 -0
- package/dist/shared/dto/nodes.js +8 -0
- package/dist/shared/dto/nodes.js.map +1 -0
- package/dist/shared/dto/pipelines.d.ts +53 -0
- package/dist/shared/dto/pipelines.d.ts.map +1 -0
- package/dist/shared/dto/pipelines.js +9 -0
- package/dist/shared/dto/pipelines.js.map +1 -0
- package/dist/shared/dto/project.d.ts +142 -8
- package/dist/shared/dto/project.d.ts.map +1 -1
- package/dist/shared/dto/services.d.ts +831 -7
- package/dist/shared/dto/services.d.ts.map +1 -1
- package/dist/shared/dto/system-info.d.ts +93 -0
- package/dist/shared/dto/system-info.d.ts.map +1 -0
- package/dist/shared/dto/system-info.js +9 -0
- package/dist/shared/dto/system-info.js.map +1 -0
- package/dist/shared/dto/traces.d.ts +49 -0
- package/dist/shared/dto/traces.d.ts.map +1 -0
- package/dist/shared/dto/traces.js +9 -0
- package/dist/shared/dto/traces.js.map +1 -0
- package/dist/shared/env-config.d.ts +74 -0
- package/dist/shared/env-config.d.ts.map +1 -0
- package/dist/shared/env-config.js +99 -0
- package/dist/shared/env-config.js.map +1 -0
- package/dist/shared/events.d.ts +45 -39
- package/dist/shared/events.d.ts.map +1 -1
- package/dist/shared/events.js +6 -0
- package/dist/shared/events.js.map +1 -1
- package/dist/shared/format.d.ts +1 -1
- package/dist/shared/format.d.ts.map +1 -1
- package/dist/shared/format.js +4 -0
- package/dist/shared/format.js.map +1 -1
- package/dist/shared/local-infra-host.d.ts +28 -0
- package/dist/shared/local-infra-host.d.ts.map +1 -0
- package/dist/shared/local-infra-host.js +28 -0
- package/dist/shared/local-infra-host.js.map +1 -0
- package/dist/shared/node-check.d.ts +37 -0
- package/dist/shared/node-check.d.ts.map +1 -0
- package/dist/shared/node-check.js +41 -0
- package/dist/shared/node-check.js.map +1 -0
- package/dist/shared/paths.d.ts +29 -0
- package/dist/shared/paths.d.ts.map +1 -0
- package/dist/shared/paths.js +54 -0
- package/dist/shared/paths.js.map +1 -0
- package/dist/shared/pnpm.d.ts +29 -0
- package/dist/shared/pnpm.d.ts.map +1 -0
- package/dist/shared/pnpm.js +57 -0
- package/dist/shared/pnpm.js.map +1 -0
- package/dist/shared/private-files.d.ts +29 -0
- package/dist/shared/private-files.d.ts.map +1 -0
- package/dist/shared/private-files.js +109 -0
- package/dist/shared/private-files.js.map +1 -0
- package/dist/shared/redact-env.d.ts +24 -0
- package/dist/shared/redact-env.d.ts.map +1 -0
- package/dist/shared/redact-env.js +36 -0
- package/dist/shared/redact-env.js.map +1 -0
- package/dist/shared/release-reading.d.ts +85 -0
- package/dist/shared/release-reading.d.ts.map +1 -0
- package/dist/shared/release-reading.js +81 -0
- package/dist/shared/release-reading.js.map +1 -0
- package/dist/shared/roles.d.ts +58 -3
- package/dist/shared/roles.d.ts.map +1 -1
- package/dist/shared/roles.js +55 -0
- package/dist/shared/roles.js.map +1 -1
- package/dist/shared/rpcauth.d.ts +13 -0
- package/dist/shared/rpcauth.d.ts.map +1 -0
- package/dist/shared/rpcauth.js +23 -0
- package/dist/shared/rpcauth.js.map +1 -0
- package/dist/shared/shell-escape.d.ts +9 -0
- package/dist/shared/shell-escape.d.ts.map +1 -0
- package/dist/shared/shell-escape.js +11 -0
- package/dist/shared/shell-escape.js.map +1 -0
- package/dist/shared/sync-reading.d.ts +45 -0
- package/dist/shared/sync-reading.d.ts.map +1 -0
- package/dist/shared/sync-reading.js +42 -0
- package/dist/shared/sync-reading.js.map +1 -0
- package/dist/shared/tokens.d.ts +19 -0
- package/dist/shared/tokens.d.ts.map +1 -1
- package/dist/shared/tokens.js +28 -0
- package/dist/shared/tokens.js.map +1 -1
- package/dist/webapp/webapp.service.d.ts +33 -2
- package/dist/webapp/webapp.service.d.ts.map +1 -1
- package/dist/webapp/webapp.service.js +143 -31
- package/dist/webapp/webapp.service.js.map +1 -1
- package/dist/workers/health-monitor-process.d.ts.map +1 -1
- package/dist/workers/health-monitor-process.js +10 -0
- package/dist/workers/health-monitor-process.js.map +1 -1
- package/dist/workers/health-monitor.service.d.ts +45 -3
- package/dist/workers/health-monitor.service.d.ts.map +1 -1
- package/dist/workers/health-monitor.service.js +152 -25
- package/dist/workers/health-monitor.service.js.map +1 -1
- package/dist/workers/system-worker-manager.d.ts +43 -0
- package/dist/workers/system-worker-manager.d.ts.map +1 -1
- package/dist/workers/system-worker-manager.js +150 -3
- package/dist/workers/system-worker-manager.js.map +1 -1
- package/dist/workers/types.d.ts +8 -2
- package/dist/workers/types.d.ts.map +1 -1
- package/package.json +64 -30
- package/webapp/dist/BUILD.json +5 -0
- package/webapp/dist/assets/FormControlLabel-BrH2diyl.js +1 -0
- package/webapp/dist/assets/Grid-BZ7xhoHQ.js +1 -0
- package/webapp/dist/assets/Switch-DGSAxQPM.js +1 -0
- package/webapp/dist/assets/alerts-sXqHJbsa.js +1 -0
- package/webapp/dist/assets/apps-B_Ah8Flh.js +1 -0
- package/webapp/dist/assets/audit-YXihwyui.js +1 -0
- package/webapp/dist/assets/client-CGbBvy9k.js +1 -0
- package/webapp/dist/assets/constants-veKGFkC6.js +1 -0
- package/webapp/dist/assets/containers-Di4NOTLf.js +2 -0
- package/webapp/dist/assets/daemon-memory-CCPZ4cV_.js +1 -0
- package/webapp/dist/assets/dashboard-Cfuf95N3.js +1 -0
- package/webapp/dist/assets/dashboard-builder-CowaYb-M.js +1 -0
- package/webapp/dist/assets/deploy-release-dialog-D6C-XcKY.js +1 -0
- package/webapp/dist/assets/deployments-ChTq5kCw.js +1 -0
- package/webapp/dist/assets/detail-BsGWv7Dj.js +1 -0
- package/webapp/dist/assets/detail-CyVf_cw5.js +2 -0
- package/webapp/dist/assets/detail-D027j6aO.js +8 -0
- package/webapp/dist/assets/formatters-BqjL73N3.js +1 -0
- package/webapp/dist/assets/index-B8AHIPc-.css +1 -0
- package/webapp/dist/assets/index-DiZbrwxT.js +414 -0
- package/webapp/dist/assets/logs-L2b8Oqmo.js +12 -0
- package/webapp/dist/assets/maplibre-gl-MlmG2kbn.js +801 -0
- package/webapp/dist/assets/metrics-CQgjz2Lz.js +2 -0
- package/webapp/dist/assets/nodes-Nwia2Ty6.js +7 -0
- package/webapp/dist/assets/pipelines-DCu_rXOr.js +4 -0
- package/webapp/dist/assets/projects-Bb4aV76h.js +1 -0
- package/webapp/dist/assets/react-CwJFpaho.js +1 -0
- package/webapp/dist/assets/react-apexcharts.esm-Dy0Fez42.js +1956 -0
- package/webapp/dist/assets/release-bits-Dj4EOhhb.js +1 -0
- package/webapp/dist/assets/release-build-panel-D6OCVlhT.js +1 -0
- package/webapp/dist/assets/releases-CnAt3yO6.js +2 -0
- package/webapp/dist/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/webapp/dist/assets/settings-DU-mjiwb.js +1 -0
- package/webapp/dist/assets/settled-pair-C7SjZuns.js +1 -0
- package/webapp/dist/assets/sign-in-Bcvjrr4C.js +1 -0
- package/webapp/dist/assets/stacks-B-e8p50I.js +1 -0
- package/webapp/dist/assets/sync-reading-C3PnJ7AX.js +1 -0
- package/webapp/dist/assets/system-info-BtE3dgfw.js +1 -0
- package/webapp/dist/assets/topology-Cwch-uF1.js +12 -0
- package/webapp/dist/assets/topology-DLioOiRN.css +1 -0
- package/webapp/dist/assets/traces-BbShR-4P.js +1 -0
- package/webapp/dist/assets/use-stack-context-CZUgPq88.js +1 -0
- package/webapp/dist/index.html +6 -6
- package/dist/commands/dev.d.ts +0 -23
- package/dist/commands/dev.d.ts.map +0 -1
- package/dist/commands/dev.js +0 -76
- package/dist/commands/dev.js.map +0 -1
- package/dist/config/define-app.d.ts +0 -6
- package/dist/config/define-app.d.ts.map +0 -1
- package/dist/config/define-app.js +0 -38
- package/dist/config/define-app.js.map +0 -1
- package/dist/infrastructure/gateway-generator.d.ts +0 -63
- package/dist/infrastructure/gateway-generator.d.ts.map +0 -1
- package/dist/infrastructure/gateway-generator.js +0 -253
- package/dist/infrastructure/gateway-generator.js.map +0 -1
- package/dist/monitoring/health.service.d.ts +0 -14
- package/dist/monitoring/health.service.d.ts.map +0 -1
- package/dist/monitoring/health.service.js +0 -50
- package/dist/monitoring/health.service.js.map +0 -1
- package/dist/monitoring/metrics.service.d.ts +0 -14
- package/dist/monitoring/metrics.service.d.ts.map +0 -1
- package/dist/monitoring/metrics.service.js +0 -40
- package/dist/monitoring/metrics.service.js.map +0 -1
- package/dist/orchestrator/bootstrap-runner.d.ts +0 -15
- package/dist/orchestrator/bootstrap-runner.d.ts.map +0 -1
- package/dist/orchestrator/bootstrap-runner.js +0 -152
- package/dist/orchestrator/bootstrap-runner.js.map +0 -1
- package/dist/orchestrator/topology-proxy.d.ts +0 -65
- package/dist/orchestrator/topology-proxy.d.ts.map +0 -1
- package/dist/orchestrator/topology-proxy.js +0 -209
- package/dist/orchestrator/topology-proxy.js.map +0 -1
- package/dist/orchestrator/topology-relay.d.ts +0 -111
- package/dist/orchestrator/topology-relay.d.ts.map +0 -1
- package/dist/orchestrator/topology-relay.js +0 -255
- package/dist/orchestrator/topology-relay.js.map +0 -1
- package/dist/services/auth-middleware.d.ts +0 -47
- package/dist/services/auth-middleware.d.ts.map +0 -1
- package/dist/services/auth-middleware.js +0 -158
- package/dist/services/auth-middleware.js.map +0 -1
- package/dist/services/environment.rpc-service.d.ts +0 -22
- package/dist/services/environment.rpc-service.d.ts.map +0 -1
- package/dist/services/environment.rpc-service.js +0 -65
- package/dist/services/environment.rpc-service.js.map +0 -1
- package/dist/services/environment.service.d.ts +0 -87
- package/dist/services/environment.service.d.ts.map +0 -1
- package/dist/services/environment.service.js +0 -220
- package/dist/services/environment.service.js.map +0 -1
- package/dist/services/metrics-collector.service.d.ts +0 -103
- package/dist/services/metrics-collector.service.d.ts.map +0 -1
- package/dist/services/metrics-collector.service.js +0 -235
- package/dist/services/metrics-collector.service.js.map +0 -1
- package/dist/services/metrics.rpc-service.d.ts +0 -41
- package/dist/services/metrics.rpc-service.d.ts.map +0 -1
- package/dist/services/metrics.rpc-service.js +0 -90
- package/dist/services/metrics.rpc-service.js.map +0 -1
- package/dist/services/metrics.service.d.ts +0 -72
- package/dist/services/metrics.service.d.ts.map +0 -1
- package/dist/services/metrics.service.js +0 -185
- package/dist/services/metrics.service.js.map +0 -1
- package/dist/supervisor/omnitron-supervisor.d.ts +0 -21
- package/dist/supervisor/omnitron-supervisor.d.ts.map +0 -1
- package/dist/supervisor/omnitron-supervisor.js +0 -43
- package/dist/supervisor/omnitron-supervisor.js.map +0 -1
- package/dist/webapp/static-server.d.ts +0 -24
- package/dist/webapp/static-server.d.ts.map +0 -1
- package/dist/webapp/static-server.js +0 -152
- package/dist/webapp/static-server.js.map +0 -1
- package/webapp/dist/assets/Badge-D2ZBP5iK.js +0 -1
- package/webapp/dist/assets/Card-vO88g06B.js +0 -1
- package/webapp/dist/assets/CardActions-C9h7Q2wW.js +0 -1
- package/webapp/dist/assets/CardContent-BA_Xmmhk.js +0 -1
- package/webapp/dist/assets/CardHeader-ceIs__6x.js +0 -1
- package/webapp/dist/assets/Chip-Ckk0xUhK.js +0 -1
- package/webapp/dist/assets/DialogActions-BhHM7hov.js +0 -1
- package/webapp/dist/assets/DialogContentText-BT2JQRmK.js +0 -1
- package/webapp/dist/assets/FormControlLabel-CcQByVS8.js +0 -1
- package/webapp/dist/assets/Grid-14PETRQW.js +0 -1
- package/webapp/dist/assets/InputAdornment-B8aHIsQ7.js +0 -1
- package/webapp/dist/assets/Skeleton-B74-Ds6O.js +0 -37
- package/webapp/dist/assets/Switch-DvWD2wh4.js +0 -1
- package/webapp/dist/assets/SwitchBase-CDU4nY8O.js +0 -1
- package/webapp/dist/assets/Tab-DcCOYYp5.js +0 -1
- package/webapp/dist/assets/TableContainer-CzTh4mu-.js +0 -1
- package/webapp/dist/assets/TableRow-BySEreZR.js +0 -2
- package/webapp/dist/assets/TextField-BLf-BHz2.js +0 -1
- package/webapp/dist/assets/alerts-DnRbT41C.js +0 -1
- package/webapp/dist/assets/apps-CdR0VH2d.js +0 -1
- package/webapp/dist/assets/chunk-DtcAfS_W.js +0 -1
- package/webapp/dist/assets/client-DU8I_lDc.js +0 -2
- package/webapp/dist/assets/constants-BgnT-Xdy.js +0 -1
- package/webapp/dist/assets/containers-Dw-rRXV1.js +0 -1
- package/webapp/dist/assets/dashboard-CzgB0uZz.js +0 -1
- package/webapp/dist/assets/dashboard-builder-DsA0yg33.js +0 -1
- package/webapp/dist/assets/deployments-DtQAoIcQ.js +0 -1
- package/webapp/dist/assets/detail-BJR-G7JG.js +0 -1
- package/webapp/dist/assets/detail-nlCeSltl.js +0 -8
- package/webapp/dist/assets/formatters-Do41SRmE.js +0 -1
- package/webapp/dist/assets/index-ByQDwp2r.js +0 -566
- package/webapp/dist/assets/index-CHVXOsTS.css +0 -1
- package/webapp/dist/assets/isMuiElement-DwF2naaF.js +0 -1
- package/webapp/dist/assets/logs-Kn8o4H7k.js +0 -11
- package/webapp/dist/assets/metrics-DN8Zu5wT.js +0 -2
- package/webapp/dist/assets/nodes-Bgch7AtN.js +0 -7
- package/webapp/dist/assets/pipelines-Cry3qm-S.js +0 -4
- package/webapp/dist/assets/popper-BJFSj6rc.js +0 -1
- package/webapp/dist/assets/preload-helper-DSXbuxSR.js +0 -1
- package/webapp/dist/assets/projects-Dym2GI1U.js +0 -1
- package/webapp/dist/assets/react-apexcharts.esm-CSGK5Cxn.js +0 -958
- package/webapp/dist/assets/react-apexcharts.esm-DEAWOwx5.js +0 -1003
- package/webapp/dist/assets/settings-va3zTcow.js +0 -1
- package/webapp/dist/assets/sign-in-ik35umbp.js +0 -1
- package/webapp/dist/assets/stacks-CVFOnxbF.js +0 -1
- package/webapp/dist/assets/system-info-npIXAjX2.js +0 -1
- package/webapp/dist/assets/topology-CHpVij2M.css +0 -1
- package/webapp/dist/assets/topology-bDe70vLs.js +0 -12
- package/webapp/dist/assets/traces-DIIcT8DF.js +0 -1
- package/webapp/dist/assets/use-stack-context-DHLwZv1r.js +0 -1
- /package/webapp/dist/assets/{fs-CgZLtHiQ.js → fs-Ccl3sAcp.js} +0 -0
|
@@ -7,6 +7,11 @@
|
|
|
7
7
|
* Into concrete Docker container definitions:
|
|
8
8
|
* { name: 'omnitron-postgres', image: 'postgres:17-alpine', ports: [...], env: [...] }
|
|
9
9
|
*/
|
|
10
|
+
import fs from 'node:fs';
|
|
11
|
+
import { configFilesHash } from './config-payload.js';
|
|
12
|
+
import { gatewayStaticLinkName } from '../services/static-carry-forward.js';
|
|
13
|
+
import { CONFIG_ROOT_PREFIX, shippedMountPath } from './shipped-config.js';
|
|
14
|
+
import { bindService } from './service-binding.js';
|
|
10
15
|
/**
|
|
11
16
|
* Container naming: {project}-{stack}-{service}
|
|
12
17
|
* Examples: myproj-dev-postgres, myproj-dev-redis, myproj-test-minio
|
|
@@ -27,9 +32,101 @@ export function setContainerPrefix(project, env) {
|
|
|
27
32
|
export function getContainerPrefix() {
|
|
28
33
|
return CONTAINER_PREFIX;
|
|
29
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* A named volume two services of one stack mount by the same name:
|
|
37
|
+
* `source: 'shared:gateway-socket'` is `<prefix>-gateway-socket` wherever it
|
|
38
|
+
* is declared.
|
|
39
|
+
*
|
|
40
|
+
* Every other named volume is its service's — `<prefix>-<service>-<key>`,
|
|
41
|
+
* whatever its `source` says — so nothing a stack could write gave two
|
|
42
|
+
* containers one volume. The onion needed exactly that: Tor resolved
|
|
43
|
+
* `daos-test-gateway` once, at start, and on 2026-09-26 a deploy gave the
|
|
44
|
+
* gateway's old address to Nominatim; for ~10 minutes the onion served
|
|
45
|
+
* Nominatim's Apache and nobody could sign in. A unix socket on a volume
|
|
46
|
+
* both containers mount has no address to go stale.
|
|
47
|
+
*/
|
|
48
|
+
export const SHARED_VOLUME_PREFIX = 'shared:';
|
|
49
|
+
/** A declared volume as docker mounts it for `service`: shared, bound, or the service's own. */
|
|
50
|
+
function resolveNamedOrBound(service, key, vol) {
|
|
51
|
+
if (typeof vol === 'string')
|
|
52
|
+
return { source: `${CONTAINER_PREFIX}-${service}-${key}`, target: vol };
|
|
53
|
+
const shared = vol.source.startsWith(SHARED_VOLUME_PREFIX) ? vol.source.slice(SHARED_VOLUME_PREFIX.length) : null;
|
|
54
|
+
if (shared !== null && !/^[a-z0-9][a-z0-9_.-]*$/.test(shared)) {
|
|
55
|
+
// Docker would refuse the name anyway; saying which declaration it was is
|
|
56
|
+
// the useful part.
|
|
57
|
+
throw new Error(`Volume "${key}" of ${service}: "${vol.source}" does not name a shared volume (lower-case letters, digits, «_.-»)`);
|
|
58
|
+
}
|
|
59
|
+
const isBindMount = vol.source.startsWith('/') || vol.source.startsWith('.');
|
|
60
|
+
const entry = {
|
|
61
|
+
source: shared !== null
|
|
62
|
+
? `${CONTAINER_PREFIX}-${shared}`
|
|
63
|
+
: isBindMount
|
|
64
|
+
? vol.source
|
|
65
|
+
: `${CONTAINER_PREFIX}-${service}-${key}`,
|
|
66
|
+
target: vol.target,
|
|
67
|
+
};
|
|
68
|
+
if (vol.readonly)
|
|
69
|
+
entry.readonly = vol.readonly;
|
|
70
|
+
return entry;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Where to PUBLISH the gateway, which is not where it listens.
|
|
74
|
+
*
|
|
75
|
+
* After preset expansion `ports` holds CONTAINER ports — openresty's
|
|
76
|
+
* `defaultPorts.http` is 80, because that is what the image listens on — and
|
|
77
|
+
* a port named in the config becomes a HOST mapping under
|
|
78
|
+
* `docker.portMappings`. Reading `ports.http` takes the first for the second,
|
|
79
|
+
* so a stack asking for 8080 gets a gateway published on 80.
|
|
80
|
+
*
|
|
81
|
+
* Measured on the dev stand: `omnitron.config.ts` declares
|
|
82
|
+
* `gateway.ports.http = 8080` and its own comment says ":8080" three times,
|
|
83
|
+
* while `daos-dev-gateway` published `80/tcp -> 0.0.0.0:80`. The consequence
|
|
84
|
+
* is quiet rather than loud — a browser arriving on :80 sends
|
|
85
|
+
* `Origin: http://localhost` with no port, which is not in the gateway's
|
|
86
|
+
* allow-list, so the portal cannot call the API through it at all. The portal
|
|
87
|
+
* is reachable on 7080, so nothing complained.
|
|
88
|
+
*
|
|
89
|
+
* `resolveServiceRequirement` has read it correctly all along:
|
|
90
|
+
* `host: docker.portMappings?.[name] ?? containerPort`. Same expression here,
|
|
91
|
+
* because it is the same question — and a port the preset does not declare
|
|
92
|
+
* really is a container port, which is why the fallback is not a mistake.
|
|
93
|
+
*/
|
|
94
|
+
export function gatewayHostPort(service, legacy) {
|
|
95
|
+
return service?.docker?.portMappings?.['http'] ?? service?.ports?.['http'] ?? legacy?.port ?? 8080;
|
|
96
|
+
}
|
|
30
97
|
function containerName(service) {
|
|
31
98
|
return `${CONTAINER_PREFIX}-${service}`;
|
|
32
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* How one managed container reaches another.
|
|
102
|
+
*
|
|
103
|
+
* Every container omnitron provisions joins the stack's named network, and
|
|
104
|
+
* the network exists so they can address each other by name — the comment on
|
|
105
|
+
* `networkName` below says exactly that. The gateway did not: it was given
|
|
106
|
+
* `host.docker.internal` and the HOST-published port, and went out to the
|
|
107
|
+
* host and back.
|
|
108
|
+
*
|
|
109
|
+
* That works on a developer's Mac, where `host.docker.internal` reaches the
|
|
110
|
+
* host's loopback. It cannot work on a Linux node, where `host-gateway`
|
|
111
|
+
* resolves to the docker0 bridge address and omnitron publishes every managed
|
|
112
|
+
* port on `127.0.0.1` — deliberately, so a container is not reachable from
|
|
113
|
+
* the LAN. Measured on the test node: the gateway sat on 172.19.0.2, redis on
|
|
114
|
+
* 172.19.0.4 of the same network, and every request the gateway served spent
|
|
115
|
+
* 200ms on `lua tcp socket connect timed out, upstream: 172.17.0.1:6379`
|
|
116
|
+
* before failing open. The hardening that bound the ports closed this path,
|
|
117
|
+
* and the only evidence was a warning nobody was reading.
|
|
118
|
+
*
|
|
119
|
+
* The port is the CONTAINER port for the same reason the host is a container
|
|
120
|
+
* name: a stack whose redis is published on 6380 still listens on 6379
|
|
121
|
+
* inside. Host and port are one decision and are answered here together,
|
|
122
|
+
* because answering half of it is how a correct name ends up on the wrong
|
|
123
|
+
* port.
|
|
124
|
+
*/
|
|
125
|
+
export function containerEndpoint(service, containerPort) {
|
|
126
|
+
return { host: containerName(service), port: containerPort };
|
|
127
|
+
}
|
|
128
|
+
/** Redis, as a container on the stack network sees it. */
|
|
129
|
+
export const REDIS_CONTAINER_PORT = 6379;
|
|
33
130
|
/**
|
|
34
131
|
* Convention-derived managed network name.
|
|
35
132
|
*
|
|
@@ -65,6 +162,32 @@ export function getManagedNetwork() {
|
|
|
65
162
|
export function applyManagedDefaults(spec) {
|
|
66
163
|
if (spec.network === undefined)
|
|
67
164
|
spec.network = getManagedNetwork();
|
|
165
|
+
// Published ports bind to loopback unless a container asks otherwise.
|
|
166
|
+
//
|
|
167
|
+
// Docker's default is every interface, and Docker's iptables rules are
|
|
168
|
+
// inserted ahead of ufw's — so a published port is reachable from the
|
|
169
|
+
// internet no matter what the host firewall says. Measured on the test
|
|
170
|
+
// server, whose ufw allows 22/tcp and nothing else:
|
|
171
|
+
//
|
|
172
|
+
// nc -vz 37.27.130.185 9700 → timed out (ufw, as configured)
|
|
173
|
+
// nc -vz 37.27.130.185 5480 → OPEN (docker, straight past it)
|
|
174
|
+
//
|
|
175
|
+
// 5480 is omnitron's own Postgres. An operator who reads their firewall
|
|
176
|
+
// rules and concludes the database is private is reading a control that
|
|
177
|
+
// does not cover it, which is the worst kind of wrong: a check that
|
|
178
|
+
// answers confidently about something it cannot see.
|
|
179
|
+
//
|
|
180
|
+
// The applications that use these containers run on the same host and
|
|
181
|
+
// reach them over loopback. Anything further away comes through
|
|
182
|
+
// omnitron's own transport, which is authenticated. So the default costs
|
|
183
|
+
// nothing and the exposure had no beneficiary.
|
|
184
|
+
//
|
|
185
|
+
// A container that genuinely must be reachable says so by setting
|
|
186
|
+
// `bindHost` — a deliberate line in a config, reviewable in a diff.
|
|
187
|
+
for (const port of spec.ports ?? []) {
|
|
188
|
+
if (port.bindHost === undefined)
|
|
189
|
+
port.bindHost = '127.0.0.1';
|
|
190
|
+
}
|
|
68
191
|
return spec;
|
|
69
192
|
}
|
|
70
193
|
/**
|
|
@@ -102,47 +225,108 @@ function stackLabels() {
|
|
|
102
225
|
* - Service is disabled by stack override
|
|
103
226
|
* - Stack override provides an external address
|
|
104
227
|
*/
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
228
|
+
/**
|
|
229
|
+
* An HTTP probe that works in the image it runs in.
|
|
230
|
+
*
|
|
231
|
+
* `curl -sf` was the generic form, and alpine-based images do not ship curl.
|
|
232
|
+
* Measured on the gateway: `/bin/sh: curl: not found`, exit 1, every ten
|
|
233
|
+
* seconds forever — a container serving traffic correctly (the onion in
|
|
234
|
+
* front of it answered 200) reported `unhealthy` for its whole life, and
|
|
235
|
+
* `provisionStack` reported the stack NOT ready because of it.
|
|
236
|
+
*
|
|
237
|
+
* The lesson was already learned once in this file: `resolveOmnitronNginx`
|
|
238
|
+
* uses wget with a comment saying curl is not in the image. It was learned
|
|
239
|
+
* for one container and not for the generic path every other service takes.
|
|
240
|
+
*
|
|
241
|
+
* Tries curl, then wget, then falls back to failing. Both spellings, because
|
|
242
|
+
* busybox wget and GNU wget disagree about flags but agree about these:
|
|
243
|
+
* `-q` quiet, `-O -` to stdout, `-T` timeout.
|
|
244
|
+
*/
|
|
245
|
+
/**
|
|
246
|
+
* Which port an HTTP health check should knock on.
|
|
247
|
+
*
|
|
248
|
+
* The probe was `http://localhost<path>` — port 80, always. The gateway
|
|
249
|
+
* listens on 8080, so the check connected to nothing:
|
|
250
|
+
*
|
|
251
|
+
* wget: can't connect to remote host: Connection refused
|
|
252
|
+
*
|
|
253
|
+
* on a container that was serving correctly on its own port, through an
|
|
254
|
+
* onion address that answered 200. Every service whose port is not 80 had
|
|
255
|
+
* an unanswerable health check, and an unanswerable check is a permanent
|
|
256
|
+
* negative — `provisionStack` reported the stack not ready because of it.
|
|
257
|
+
*
|
|
258
|
+
* A check may name its port, as the jsonrpc one already does. Otherwise the
|
|
259
|
+
* service's own: `http` by convention, then whatever single port it
|
|
260
|
+
* declares — a service with one port cannot mean another.
|
|
261
|
+
*/
|
|
262
|
+
function healthPort(check, ports) {
|
|
263
|
+
const named = check.port;
|
|
264
|
+
if (named && ports?.[named])
|
|
265
|
+
return ports[named];
|
|
266
|
+
if (ports?.['http'])
|
|
267
|
+
return ports['http'];
|
|
268
|
+
const declared = Object.values(ports ?? {});
|
|
269
|
+
if (declared.length === 1)
|
|
270
|
+
return declared[0];
|
|
271
|
+
// Several ports and no way to choose: 80 is the convention, and saying so
|
|
272
|
+
// here is better than an arbitrary pick that happens to work once.
|
|
273
|
+
return 80;
|
|
274
|
+
}
|
|
275
|
+
function httpProbe(url) {
|
|
276
|
+
return (`curl -sf --max-time 5 ${url} >/dev/null 2>&1 ` +
|
|
277
|
+
`|| wget -q -O /dev/null -T 5 ${url} >/dev/null 2>&1 ` +
|
|
278
|
+
'|| exit 1');
|
|
279
|
+
}
|
|
280
|
+
export function resolveServiceRequirement(serviceName, requirement, override, appName,
|
|
281
|
+
/** Where each service's shipped config directory is on THIS machine — see `shipped-config.ts`. */
|
|
282
|
+
configRoots) {
|
|
283
|
+
// A container only for a service this stack runs as one — not one it
|
|
284
|
+
// disables, reaches elsewhere, or runs on the node as a system service
|
|
285
|
+
// (`bindService`).
|
|
286
|
+
const binding = bindService(requirement, override);
|
|
287
|
+
if (binding.provisioning !== 'docker')
|
|
110
288
|
return null;
|
|
111
289
|
const baseDocker = requirement.docker;
|
|
112
290
|
if (!baseDocker)
|
|
113
|
-
return null;
|
|
291
|
+
return null;
|
|
114
292
|
// Deep-merge: base → networkMode variant → stack override
|
|
115
293
|
let docker = { ...baseDocker };
|
|
116
|
-
|
|
117
|
-
|
|
294
|
+
// The stack's answer first: an application declares the network that is
|
|
295
|
+
// right on a laptop, and a stack is the scope that knows when it is not.
|
|
296
|
+
const networkMode = override?.networkMode ?? requirement.networkMode;
|
|
297
|
+
if (networkMode && baseDocker.variants?.[networkMode]) {
|
|
298
|
+
docker = deepMergeDocker(docker, baseDocker.variants[networkMode]);
|
|
118
299
|
}
|
|
119
300
|
if (override?.docker) {
|
|
120
301
|
docker = deepMergeDocker(docker, override.docker);
|
|
121
302
|
}
|
|
122
303
|
// Resolve image
|
|
123
304
|
const image = docker.image ?? docker.build?.tag ?? `${serviceName}:latest`;
|
|
124
|
-
//
|
|
125
|
-
|
|
305
|
+
// The ports the service listens on in this stack's network are the
|
|
306
|
+
// container's (`bindService`); `docker.portMappings` says where each is published.
|
|
307
|
+
const ports = Object.entries(binding.ports).map(([name, containerPort]) => ({
|
|
126
308
|
host: docker.portMappings?.[name] ?? containerPort,
|
|
127
309
|
container: containerPort,
|
|
128
310
|
}));
|
|
129
311
|
// Resolve volumes
|
|
312
|
+
const shippedRoots = new Set();
|
|
130
313
|
const volumes = Object.entries(docker.volumes ?? {}).map(([name, vol]) => {
|
|
131
|
-
if (typeof vol
|
|
132
|
-
|
|
314
|
+
if (typeof vol !== 'string' && vol.source.startsWith(CONFIG_ROOT_PREFIX)) {
|
|
315
|
+
// The node's copy of a directory the master shipped. Unresolved — no
|
|
316
|
+
// copy arrived — it stays as it is, and docker refuses it by name.
|
|
317
|
+
const local = shippedMountPath(vol.source, configRoots);
|
|
318
|
+
if (local)
|
|
319
|
+
shippedRoots.add(local.root);
|
|
320
|
+
const entry = { source: local?.path ?? vol.source, target: vol.target };
|
|
321
|
+
if (vol.readonly)
|
|
322
|
+
entry.readonly = vol.readonly;
|
|
323
|
+
return entry;
|
|
133
324
|
}
|
|
134
|
-
|
|
135
|
-
const entry = {
|
|
136
|
-
source: isBindMount ? vol.source : `${CONTAINER_PREFIX}-${serviceName}-${name}`,
|
|
137
|
-
target: vol.target,
|
|
138
|
-
};
|
|
139
|
-
if (vol.readonly)
|
|
140
|
-
entry.readonly = vol.readonly;
|
|
141
|
-
return entry;
|
|
325
|
+
return resolveNamedOrBound(serviceName, name, vol);
|
|
142
326
|
});
|
|
143
327
|
// Convert IServiceHealthCheck → ContainerHealthCheck
|
|
144
|
-
const healthCheck = docker.healthCheck ?? convertHealthCheck(requirement.healthCheck,
|
|
145
|
-
|
|
328
|
+
const healthCheck = docker.healthCheck ?? convertHealthCheck(requirement.healthCheck, binding.ports);
|
|
329
|
+
const spec = applyManagedDefaults({
|
|
146
330
|
name: containerName(serviceName),
|
|
147
331
|
image,
|
|
148
332
|
ports,
|
|
@@ -170,12 +354,23 @@ export function resolveServiceRequirement(serviceName, requirement, override, ap
|
|
|
170
354
|
// stamps in the project-wide bridge.
|
|
171
355
|
...(typeof docker.network === 'string' ? { network: docker.network } : {}),
|
|
172
356
|
});
|
|
357
|
+
// The content of what it mounts from shipped directories, so a changed
|
|
358
|
+
// script recreates the container — the same reason as the gateway's.
|
|
359
|
+
for (const root of shippedRoots) {
|
|
360
|
+
const digest = mountedConfigDigest(root, spec.volumes);
|
|
361
|
+
if (digest)
|
|
362
|
+
spec.configDigest = spec.configDigest ? configFilesHash([
|
|
363
|
+
{ path: 'a', content: spec.configDigest, mode: '644' },
|
|
364
|
+
{ path: 'b', content: digest, mode: '644' },
|
|
365
|
+
]) : digest;
|
|
366
|
+
}
|
|
367
|
+
return spec;
|
|
173
368
|
}
|
|
174
369
|
/**
|
|
175
370
|
* Resolve all app-declared infrastructure services into ResolvedContainer[].
|
|
176
371
|
* Respects dependsOn ordering — dependencies come first.
|
|
177
372
|
*/
|
|
178
|
-
export function resolveAppInfrastructure(infrastructure, overrides, appName) {
|
|
373
|
+
export function resolveAppInfrastructure(infrastructure, overrides, appName, configRoots) {
|
|
179
374
|
const containers = [];
|
|
180
375
|
const resolved = new Set();
|
|
181
376
|
const pending = new Map(Object.entries(infrastructure));
|
|
@@ -191,7 +386,7 @@ export function resolveAppInfrastructure(infrastructure, overrides, appName) {
|
|
|
191
386
|
resolve(dep, depReq);
|
|
192
387
|
}
|
|
193
388
|
const override = overrides?.[`${appName}/${name}`] ?? overrides?.[name];
|
|
194
|
-
const container = resolveServiceRequirement(name, req, override, appName);
|
|
389
|
+
const container = resolveServiceRequirement(name, req, override, appName, configRoots);
|
|
195
390
|
if (container)
|
|
196
391
|
containers.push(container);
|
|
197
392
|
};
|
|
@@ -204,45 +399,54 @@ export function resolveAppInfrastructure(infrastructure, overrides, appName) {
|
|
|
204
399
|
function convertHealthCheck(check, ports) {
|
|
205
400
|
if (!check)
|
|
206
401
|
return undefined;
|
|
207
|
-
|
|
402
|
+
// One helper per default, not one helper for every duration field. A
|
|
403
|
+
// single `(s) => s ?? '30s'` used to serve all three, which gave `timeout`
|
|
404
|
+
// the interval's default: probes ran with a 30s deadline where the type
|
|
405
|
+
// and the documentation both promise 10s, so an unresponsive service was
|
|
406
|
+
// marked unhealthy up to three times later than stated — and with the
|
|
407
|
+
// deadline equal to the gap between probes, they can overlap.
|
|
408
|
+
const everyDefault = (s) => s ?? '30s';
|
|
409
|
+
const deadlineDefault = (s) => s ?? '10s';
|
|
208
410
|
switch (check.type) {
|
|
209
411
|
case 'command':
|
|
210
412
|
return {
|
|
211
413
|
test: ['CMD-SHELL', check.target],
|
|
212
|
-
interval:
|
|
213
|
-
timeout:
|
|
414
|
+
interval: everyDefault(check.interval),
|
|
415
|
+
timeout: deadlineDefault(check.timeout),
|
|
214
416
|
retries: check.retries ?? 5,
|
|
215
|
-
startPeriod:
|
|
417
|
+
startPeriod: everyDefault(check.startPeriod),
|
|
216
418
|
};
|
|
217
419
|
case 'tcp':
|
|
218
420
|
return {
|
|
219
421
|
test: ['CMD-SHELL', `nc -z localhost ${check.target} || exit 1`],
|
|
220
|
-
interval:
|
|
221
|
-
timeout:
|
|
422
|
+
interval: everyDefault(check.interval),
|
|
423
|
+
timeout: deadlineDefault(check.timeout),
|
|
222
424
|
retries: check.retries ?? 5,
|
|
223
|
-
startPeriod:
|
|
425
|
+
startPeriod: everyDefault(check.startPeriod),
|
|
224
426
|
};
|
|
225
427
|
case 'http':
|
|
226
428
|
return {
|
|
227
|
-
test: ['CMD-SHELL', `
|
|
228
|
-
interval:
|
|
229
|
-
timeout:
|
|
429
|
+
test: ['CMD-SHELL', httpProbe(`http://localhost:${healthPort(check, ports)}${check.target}`)],
|
|
430
|
+
interval: everyDefault(check.interval),
|
|
431
|
+
timeout: deadlineDefault(check.timeout),
|
|
230
432
|
retries: check.retries ?? 5,
|
|
231
|
-
startPeriod:
|
|
433
|
+
startPeriod: everyDefault(check.startPeriod),
|
|
232
434
|
};
|
|
233
435
|
case 'jsonrpc': {
|
|
234
436
|
const portName = check.jsonrpc?.port ?? 'rpc';
|
|
235
437
|
const port = ports?.[portName] ?? portName;
|
|
236
438
|
const method = check.jsonrpc?.method ?? check.target;
|
|
237
439
|
const auth = check.jsonrpc?.auth;
|
|
238
|
-
const authStr = auth
|
|
440
|
+
const authStr = auth && auth.type !== 'cookie'
|
|
441
|
+
? `-u ${auth.user}:${auth.password} ${auth.type === 'digest' ? '--digest' : ''}`
|
|
442
|
+
: '';
|
|
239
443
|
const rpcPath = check.jsonrpc?.path ?? '/json_rpc';
|
|
240
444
|
return {
|
|
241
445
|
test: ['CMD-SHELL', `curl -sf ${authStr} -X POST http://localhost:${port}${rpcPath} -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":"health","method":"${method}"}' || exit 1`],
|
|
242
|
-
interval:
|
|
243
|
-
timeout:
|
|
446
|
+
interval: everyDefault(check.interval),
|
|
447
|
+
timeout: deadlineDefault(check.timeout),
|
|
244
448
|
retries: check.retries ?? 5,
|
|
245
|
-
startPeriod:
|
|
449
|
+
startPeriod: everyDefault(check.startPeriod),
|
|
246
450
|
};
|
|
247
451
|
}
|
|
248
452
|
default:
|
|
@@ -261,8 +465,11 @@ function deepMergeDocker(base, overlay) {
|
|
|
261
465
|
if (base.labels || overlay.labels) {
|
|
262
466
|
merged.labels = { ...base.labels, ...overlay.labels };
|
|
263
467
|
}
|
|
264
|
-
|
|
265
|
-
|
|
468
|
+
// By key, like the environment: an overlay that adds a volume keeps the
|
|
469
|
+
// base's. Replaced wholesale, a stack that gave Tor one more mount would
|
|
470
|
+
// have taken away `/var/lib/tor` — its onion keys, and with them its address.
|
|
471
|
+
if (base.volumes || overlay.volumes) {
|
|
472
|
+
merged.volumes = { ...base.volumes, ...overlay.volumes };
|
|
266
473
|
}
|
|
267
474
|
if (overlay.resources === undefined && base.resources) {
|
|
268
475
|
merged.resources = base.resources;
|
|
@@ -327,6 +534,55 @@ export function resolveOmnitronPg(options) {
|
|
|
327
534
|
*
|
|
328
535
|
* Port 9800 (public) → nginx → port 9801 (internal daemon HTTP)
|
|
329
536
|
*/
|
|
537
|
+
/**
|
|
538
|
+
* A digest of every file a container mounts from under `root`.
|
|
539
|
+
*
|
|
540
|
+
* `configFilesHash` was written for this — its docblock says it is «folded
|
|
541
|
+
* into the container's spec hash by the caller, so a changed template
|
|
542
|
+
* recreates the container» — and had no caller. So a node wrote each new
|
|
543
|
+
* nginx.conf over the old one and kept serving the old one: the gateway
|
|
544
|
+
* renders its template once, at start, and a reconcile that compares volume
|
|
545
|
+
* PATHS saw nothing to do. The test gateway was recreated only when its
|
|
546
|
+
* static bundle changed, which carried the config along by accident.
|
|
547
|
+
*
|
|
548
|
+
* Taken from the volumes themselves rather than a list of file names, so a
|
|
549
|
+
* mount added later is covered without anyone remembering this function.
|
|
550
|
+
* Read from disk on the machine that will run the container: on a node that
|
|
551
|
+
* is the copy just written from the master's payload, on a master the
|
|
552
|
+
* project's own files. Synchronous, because the resolver is — and small: the
|
|
553
|
+
* daos gateway's files are 65 KB, read once per provision.
|
|
554
|
+
*
|
|
555
|
+
* `undefined` when there is nothing under `root` to read, or it cannot be
|
|
556
|
+
* read — the spec hash then stays what it was without this.
|
|
557
|
+
*/
|
|
558
|
+
export function mountedConfigDigest(root, volumes) {
|
|
559
|
+
const prefix = root.endsWith('/') ? root : `${root}/`;
|
|
560
|
+
const files = [];
|
|
561
|
+
const visit = (abs) => {
|
|
562
|
+
const stat = fs.statSync(abs);
|
|
563
|
+
if (stat.isDirectory()) {
|
|
564
|
+
for (const name of fs.readdirSync(abs).sort())
|
|
565
|
+
visit(`${abs}/${name}`);
|
|
566
|
+
}
|
|
567
|
+
else if (stat.isFile()) {
|
|
568
|
+
// latin1 maps bytes to code units one to one, so the digest sees the
|
|
569
|
+
// bytes the container will, text or not.
|
|
570
|
+
files.push({ path: abs.slice(prefix.length), content: fs.readFileSync(abs, 'latin1'), mode: (stat.mode & 0o777).toString(8) });
|
|
571
|
+
}
|
|
572
|
+
};
|
|
573
|
+
try {
|
|
574
|
+
for (const v of volumes) {
|
|
575
|
+
// The root itself too: a service may mount its whole shipped directory
|
|
576
|
+
// (`shipped-config.ts`), where the gateway mounts files inside it.
|
|
577
|
+
if (v.source === root || v.source.startsWith(prefix))
|
|
578
|
+
visit(v.source);
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
catch {
|
|
582
|
+
return undefined;
|
|
583
|
+
}
|
|
584
|
+
return files.length > 0 ? configFilesHash(files) : undefined;
|
|
585
|
+
}
|
|
330
586
|
/**
|
|
331
587
|
* Resolve API gateway container (OpenResty + Lua).
|
|
332
588
|
*
|
|
@@ -337,6 +593,28 @@ export function resolveOmnitronPg(options) {
|
|
|
337
593
|
* @param redisConfig Stack's Redis connection info (host, port, password)
|
|
338
594
|
* @param projectRoot Absolute path to project root (for resolving configDir)
|
|
339
595
|
*/
|
|
596
|
+
/**
|
|
597
|
+
* The gateway's config as the stack declares it: every field `resolveGateway`
|
|
598
|
+
* reads, the preset's block first and the legacy `infrastructure.gateway`
|
|
599
|
+
* after. The stack manager used to hand it two of them — `configDir` and
|
|
600
|
+
* `staticDir` — so `env`, declared on `GatewayServiceConfig` as «passed to the
|
|
601
|
+
* gateway container», reached nothing, and `volumes`, which carries the
|
|
602
|
+
* onion's socket, would have reached nothing either.
|
|
603
|
+
*/
|
|
604
|
+
export function gatewayConfigOf(presetConfig, legacy, port, redisDb) {
|
|
605
|
+
const pick = (key) => presetConfig?.[key] ?? legacy?.[key];
|
|
606
|
+
const staticDir = pick('staticDir');
|
|
607
|
+
const env = pick('env');
|
|
608
|
+
const volumes = pick('volumes');
|
|
609
|
+
return {
|
|
610
|
+
port,
|
|
611
|
+
configDir: pick('configDir') ?? 'infra/nginx',
|
|
612
|
+
redisDb,
|
|
613
|
+
...(staticDir ? { staticDir } : {}),
|
|
614
|
+
...(env ? { env } : {}),
|
|
615
|
+
...(volumes ? { volumes } : {}),
|
|
616
|
+
};
|
|
617
|
+
}
|
|
340
618
|
export function resolveGateway(config, redisConfig, projectRoot) {
|
|
341
619
|
const image = config.image ?? 'openresty/openresty:alpine';
|
|
342
620
|
const port = config.port ?? 8080;
|
|
@@ -345,15 +623,56 @@ export function resolveGateway(config, redisConfig, projectRoot) {
|
|
|
345
623
|
// Resolve absolute path to config directory
|
|
346
624
|
// Use join via string concatenation (ESM-safe, avoids sync require)
|
|
347
625
|
const absConfigDir = projectRoot.endsWith('/') ? projectRoot + configDir : projectRoot + '/' + configDir;
|
|
626
|
+
// The frontend, if this stack serves one. Absolute already means "a path on
|
|
627
|
+
// the machine that will run this", which is how a node names its own copy;
|
|
628
|
+
// a relative path is resolved against the project, like the config is.
|
|
629
|
+
const staticDir = config.staticDir;
|
|
630
|
+
const absStaticDir = !staticDir
|
|
631
|
+
? null
|
|
632
|
+
: staticDir.startsWith('/')
|
|
633
|
+
? staticDir
|
|
634
|
+
: `${projectRoot.replace(/\/$/, '')}/${staticDir.replace(/^\.\//, '')}`;
|
|
635
|
+
/**
|
|
636
|
+
* Mount the ROOT and serve through the link, when the node sent one.
|
|
637
|
+
*
|
|
638
|
+
* The build directory's path changes with every release, and it is the ONLY
|
|
639
|
+
* field of this spec that does — `mountedConfigDigest` is rooted at the
|
|
640
|
+
* config directory and the node's config root
|
|
641
|
+
* (`~/.omnitron/stack-config/<project>/<stack>/<service>`) is stable. So the
|
|
642
|
+
* container was recreated for every deployment, and that cost **1 s of 000**
|
|
643
|
+
* on the gateway, measured on release 4 (81 s of deploy). Mounting the root
|
|
644
|
+
* instead makes the mount a constant, and the swap of
|
|
645
|
+
* `current-<project>-<stack>` inside it is what changes — atomically, with
|
|
646
|
+
* `rename(2)`, picked up with no reload because nginx resolves `root` per
|
|
647
|
+
* request and this config sets no `open_file_cache`.
|
|
648
|
+
*
|
|
649
|
+
* Only when the node says so. On a master `staticDir` is a path inside the
|
|
650
|
+
* project — daos declares `apps/portal/dist` — and mounting ITS parent would
|
|
651
|
+
* put `src/`, `node_modules` and `vite.config.ts` under the web root, while
|
|
652
|
+
* `current-…` would not exist there at all and the entrypoint would fall
|
|
653
|
+
* back to proxying a Vite that is not running.
|
|
654
|
+
*/
|
|
655
|
+
const linkRoot = config.staticLinkRoot;
|
|
656
|
+
const linkName = config.staticLinkName;
|
|
657
|
+
const servesThroughLink = Boolean(linkRoot && linkName);
|
|
658
|
+
const portalMount = servesThroughLink ? linkRoot : absStaticDir;
|
|
659
|
+
const portalRoot = servesThroughLink ? `/var/www/portal/${linkName}` : '/var/www/portal';
|
|
348
660
|
// Default upstream host — host.docker.internal for Docker, overridable for bare-metal/cluster
|
|
349
661
|
const upstreamHost = 'host.docker.internal';
|
|
350
|
-
|
|
662
|
+
const spec = applyManagedDefaults({
|
|
351
663
|
name: containerName('gateway'),
|
|
352
664
|
image,
|
|
353
665
|
ports: [{ host: port, container: 80 }],
|
|
354
666
|
environment: {
|
|
355
|
-
// Redis for maintenance mode + future PoW/rate-limit state
|
|
356
|
-
|
|
667
|
+
// Redis for maintenance mode + future PoW/rate-limit state.
|
|
668
|
+
//
|
|
669
|
+
// `redisConfig.host`, not a literal: this took the host as a parameter
|
|
670
|
+
// alongside the port, the db and the password, and then ignored that
|
|
671
|
+
// one field. Three of the four came from the caller and the fourth was
|
|
672
|
+
// hard-coded to the developer's machine, which is why nothing in the
|
|
673
|
+
// signature hinted that the gateway could not reach its Redis anywhere
|
|
674
|
+
// else.
|
|
675
|
+
REDIS_HOST: redisConfig.host,
|
|
357
676
|
REDIS_PORT: String(redisConfig.port),
|
|
358
677
|
REDIS_DB: String(redisDb),
|
|
359
678
|
...(redisConfig.password ? { REDIS_PASSWORD: redisConfig.password } : {}),
|
|
@@ -362,14 +681,24 @@ export function resolveGateway(config, redisConfig, projectRoot) {
|
|
|
362
681
|
UPSTREAM_MAIN_PORT: '3001',
|
|
363
682
|
UPSTREAM_STORAGE_HOST: upstreamHost,
|
|
364
683
|
UPSTREAM_STORAGE_PORT: '3002',
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
684
|
+
UPSTREAM_PRICING_HOST: upstreamHost,
|
|
685
|
+
UPSTREAM_PRICING_PORT: '3003',
|
|
686
|
+
UPSTREAM_PAYMENTS_HOST: upstreamHost,
|
|
687
|
+
UPSTREAM_PAYMENTS_PORT: '3004',
|
|
369
688
|
UPSTREAM_MESSAGING_HOST: upstreamHost,
|
|
370
689
|
UPSTREAM_MESSAGING_PORT: '3005',
|
|
371
690
|
UPSTREAM_MESSAGING_WS_HOST: upstreamHost,
|
|
372
691
|
UPSTREAM_MESSAGING_WS_PORT: '3006',
|
|
692
|
+
UPSTREAM_GEO_HOST: upstreamHost,
|
|
693
|
+
UPSTREAM_GEO_PORT: '3007',
|
|
694
|
+
// Where the entrypoint serves `/` from. `/var/www/portal` unless the
|
|
695
|
+
// node mounted the root, in which case the link inside it — so the
|
|
696
|
+
// gateway is pointed at a new build by a symlink swap and not by a new
|
|
697
|
+
// container.
|
|
698
|
+
PORTAL_ROOT: portalRoot,
|
|
699
|
+
// User-supplied env overrides/additions (e.g. PORTAL_DEV_UPSTREAM). Merged
|
|
700
|
+
// last so config can override a preset default when intended.
|
|
701
|
+
...(config.env ?? {}),
|
|
373
702
|
},
|
|
374
703
|
volumes: [
|
|
375
704
|
// nginx.conf template — rendered by entrypoint via envsubst
|
|
@@ -380,6 +709,13 @@ export function resolveGateway(config, redisConfig, projectRoot) {
|
|
|
380
709
|
{ source: `${absConfigDir}/lua`, target: '/etc/nginx/lua', readonly: true },
|
|
381
710
|
// Maintenance mode HTML page
|
|
382
711
|
{ source: `${absConfigDir}/maintenance.html`, target: '/etc/nginx/html/maintenance.html', readonly: true },
|
|
712
|
+
// The built frontend, when the stack declares one. `/var/www/portal` is
|
|
713
|
+
// the path nginx.conf serves `/` from whenever `PORTAL_DEV_UPSTREAM` is
|
|
714
|
+
// unset, which is every deployment that has no Vite beside it.
|
|
715
|
+
...(portalMount ? [{ source: portalMount, target: '/var/www/portal', readonly: true }] : []),
|
|
716
|
+
// What the stack adds — the onion's unix socket above all, on a
|
|
717
|
+
// `shared:` volume the Tor container mounts too.
|
|
718
|
+
...Object.entries(config.volumes ?? {}).map(([key, vol]) => resolveNamedOrBound('gateway', key, vol)),
|
|
383
719
|
],
|
|
384
720
|
entrypoint: ['/bin/sh', '/docker-entrypoint.sh'],
|
|
385
721
|
healthCheck: {
|
|
@@ -397,7 +733,11 @@ export function resolveGateway(config, redisConfig, projectRoot) {
|
|
|
397
733
|
restart: 'unless-stopped',
|
|
398
734
|
extraHosts: ['host.docker.internal:host-gateway'],
|
|
399
735
|
resources: config.resources,
|
|
400
|
-
};
|
|
736
|
+
});
|
|
737
|
+
const configDigest = mountedConfigDigest(absConfigDir, spec.volumes);
|
|
738
|
+
if (configDigest)
|
|
739
|
+
spec.configDigest = configDigest;
|
|
740
|
+
return spec;
|
|
401
741
|
}
|
|
402
742
|
// =============================================================================
|
|
403
743
|
// Omnitron Admin Console (separate from API gateway)
|
|
@@ -418,7 +758,7 @@ export function resolveOmnitronNginx(options) {
|
|
|
418
758
|
return applyManagedDefaults({
|
|
419
759
|
name: `${CONTAINER_PREFIX}-nginx`,
|
|
420
760
|
image,
|
|
421
|
-
ports: [{ host: port, container: 80 }],
|
|
761
|
+
ports: [{ host: port, container: 80, bindHost: options?.bindHost ?? '127.0.0.1' }],
|
|
422
762
|
environment: {
|
|
423
763
|
OMNITRON_API_HOST: 'host.docker.internal',
|
|
424
764
|
OMNITRON_API_PORT: String(internalPort),
|
|
@@ -431,8 +771,13 @@ export function resolveOmnitronNginx(options) {
|
|
|
431
771
|
// base image, so the previous CMD-SHELL test was permanently
|
|
432
772
|
// unhealthy on a vanilla alpine nginx until someone bind-mounted curl
|
|
433
773
|
// in. wget is always present.
|
|
774
|
+
//
|
|
775
|
+
// Probe 127.0.0.1 (not `localhost`): musl resolves `localhost` to ::1
|
|
776
|
+
// first, but nginx only `listen 80;` on IPv4, so an IPv6 probe gets
|
|
777
|
+
// ECONNREFUSED and the container is reported permanently unhealthy even
|
|
778
|
+
// though the console is serving fine over IPv4.
|
|
434
779
|
healthCheck: {
|
|
435
|
-
test: ['CMD-SHELL', 'wget -q --spider http://
|
|
780
|
+
test: ['CMD-SHELL', 'wget -q --spider http://127.0.0.1/ || exit 1'],
|
|
436
781
|
interval: '10s',
|
|
437
782
|
timeout: '5s',
|
|
438
783
|
retries: 3,
|
|
@@ -461,10 +806,75 @@ export function resolveOmnitronNginx(options) {
|
|
|
461
806
|
* Resolve an InfrastructureConfig into concrete container specs.
|
|
462
807
|
* Uses preset-normalized services map — all services go through resolveServiceRequirement().
|
|
463
808
|
*/
|
|
464
|
-
export function resolveInfrastructure(_config, normalizedServices
|
|
809
|
+
export function resolveInfrastructure(_config, normalizedServices,
|
|
810
|
+
/**
|
|
811
|
+
* Stack overrides — `disabled`, `external`, per-service docker changes.
|
|
812
|
+
*
|
|
813
|
+
* This did not take them, and `resolveAppInfrastructure` was called
|
|
814
|
+
* without them, so `serviceOverrides` was honoured for services an
|
|
815
|
+
* APPLICATION declares and read by nothing for the ones a stack declares.
|
|
816
|
+
* An operator writing `tiles: { disabled: true }` got tiles.
|
|
817
|
+
*
|
|
818
|
+
* Measured on the test server: a stack that disabled the geocoder and the
|
|
819
|
+
* tile server provisioned both — a geocoding database that can reach tens
|
|
820
|
+
* of gigabytes, on a host chosen for a payment system.
|
|
821
|
+
*/
|
|
822
|
+
overrides,
|
|
823
|
+
/**
|
|
824
|
+
* Where a service's config files live on THIS machine, by service name.
|
|
825
|
+
*
|
|
826
|
+
* The gateway is not an ordinary preset container: it needs four bind
|
|
827
|
+
* mounts, an entrypoint and fifteen upstream variables, and `resolveGateway`
|
|
828
|
+
* is the only thing that produces them. On a master they come from the
|
|
829
|
+
* project root; on a node there is no project, so the files are sent over
|
|
830
|
+
* and written locally, and this names where.
|
|
831
|
+
*
|
|
832
|
+
* Without it a node built its gateway through the generic preset path —
|
|
833
|
+
* whose own `defaultDocker` comment says "Volumes and entrypoint configured
|
|
834
|
+
* by resolveGateway" — and got bare openresty: an empty `Mounts` array, a
|
|
835
|
+
* null entrypoint, zero UPSTREAM variables, and an onion serving
|
|
836
|
+
* `Welcome to OpenResty!`.
|
|
837
|
+
*/
|
|
838
|
+
configRoots, gatewayContext) {
|
|
465
839
|
if (!normalizedServices || Object.keys(normalizedServices).length === 0) {
|
|
466
840
|
return [];
|
|
467
841
|
}
|
|
468
|
-
|
|
842
|
+
const gatewayRoot = configRoots?.get('gateway');
|
|
843
|
+
if (!gatewayRoot || !normalizedServices['gateway'] || !gatewayContext) {
|
|
844
|
+
return resolveAppInfrastructure(normalizedServices, overrides, undefined, configRoots);
|
|
845
|
+
}
|
|
846
|
+
// One resolver for the gateway, wherever it runs. The rest go through the
|
|
847
|
+
// generic path, which is right for them — with the node's copies of what
|
|
848
|
+
// they mount from shipped directories (`shipped-config.ts`).
|
|
849
|
+
const { gateway: _gateway, ...rest } = normalizedServices;
|
|
850
|
+
const containers = resolveAppInfrastructure(rest, overrides, undefined, configRoots);
|
|
851
|
+
const port = gatewayHostPort(normalizedServices['gateway'], undefined);
|
|
852
|
+
// The stack's whole gateway block — its env and its volumes as on a master
|
|
853
|
+
// (`gatewayConfigOf`) — with the two paths a node names for itself. This
|
|
854
|
+
// road passed port, configDir and staticDir only: on 2026-09-26 the node
|
|
855
|
+
// built daos/test's gateway without GATEWAY_UNIX_SOCKET and without the
|
|
856
|
+
// shared socket volume, Tor pointed at a socket nobody listened on, and the
|
|
857
|
+
// onion was down for ~11 minutes. f0e19089 had fixed the master's road.
|
|
858
|
+
const { staticDir: _declaredStaticDir, ...declared } = gatewayConfigOf(normalizedServices['gateway']._presetConfig, undefined, port, gatewayContext.redis.db);
|
|
859
|
+
const staticRoot = gatewayContext.staticRoots?.get('gateway');
|
|
860
|
+
const staticLinkRoot = gatewayContext.staticLinkRoots?.get('gateway');
|
|
861
|
+
containers.push(resolveGateway({
|
|
862
|
+
...declared,
|
|
863
|
+
configDir: '.',
|
|
864
|
+
// Absolute: a node names its own copy, not a path relative to a
|
|
865
|
+
// project it does not have.
|
|
866
|
+
...(staticRoot ? { staticDir: staticRoot } : {}),
|
|
867
|
+
// The project and the stack are not parameters here and do not need
|
|
868
|
+
// to be: `setStackLabels` has already put them where every container
|
|
869
|
+
// of this stack reads them, and the link is spelled by the one
|
|
870
|
+
// function that spells it anywhere.
|
|
871
|
+
...(staticLinkRoot
|
|
872
|
+
? {
|
|
873
|
+
staticLinkRoot,
|
|
874
|
+
staticLinkName: gatewayStaticLinkName(STACK_LABELS['omnitron.project'] ?? '', STACK_LABELS['omnitron.stack'] ?? ''),
|
|
875
|
+
}
|
|
876
|
+
: {}),
|
|
877
|
+
}, gatewayContext.redis, gatewayRoot));
|
|
878
|
+
return containers;
|
|
469
879
|
}
|
|
470
880
|
//# sourceMappingURL=service-resolver.js.map
|