@omnitron-dev/omnitron 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/dist/BUILD.json +2 -2
- package/dist/cli/omnitron.js +26 -2
- package/dist/cli/omnitron.js.map +1 -1
- package/dist/cluster/mesh-link.js +1 -1
- package/dist/cluster/slave-connector.d.ts +2 -2
- package/dist/cluster/slave-connector.js +1 -1
- package/dist/commands/deploy.d.ts +4 -4
- package/dist/commands/deploy.js +4 -4
- package/dist/commands/discover.d.ts +2 -2
- package/dist/commands/discover.js +2 -2
- package/dist/commands/fleet-asking.d.ts +2 -2
- package/dist/commands/fleet-asking.js +2 -2
- package/dist/commands/fleet-recover.d.ts +2 -0
- package/dist/commands/fleet-recover.d.ts.map +1 -0
- package/dist/commands/fleet-recover.js +30 -0
- package/dist/commands/fleet-recover.js.map +1 -0
- package/dist/commands/host-ingress.d.ts +3 -0
- package/dist/commands/host-ingress.d.ts.map +1 -0
- package/dist/commands/host-ingress.js +31 -0
- package/dist/commands/host-ingress.js.map +1 -0
- package/dist/commands/infra.d.ts +2 -2
- package/dist/commands/infra.js +7 -7
- package/dist/commands/infra.js.map +1 -1
- package/dist/commands/logs.d.ts +1 -1
- package/dist/commands/logs.js +3 -3
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/node.d.ts +2 -14
- package/dist/commands/node.d.ts.map +1 -1
- package/dist/commands/node.js +33 -22
- package/dist/commands/node.js.map +1 -1
- package/dist/commands/pipeline.d.ts.map +1 -1
- package/dist/commands/pipeline.js +8 -1
- package/dist/commands/pipeline.js.map +1 -1
- package/dist/commands/project.d.ts +2 -2
- package/dist/commands/project.js +2 -2
- package/dist/commands/release.d.ts +1 -1
- package/dist/commands/release.js +4 -4
- package/dist/commands/release.js.map +1 -1
- package/dist/commands/remote.d.ts +3 -3
- package/dist/commands/remote.js +3 -3
- package/dist/commands/tor.d.ts +1 -1
- package/dist/commands/tor.js +2 -2
- package/dist/config/types.d.ts +9 -6
- package/dist/config/types.d.ts.map +1 -1
- package/dist/daemon/daemon-entry.js +1 -1
- package/dist/daemon/daemon-entry.js.map +1 -1
- package/dist/daemon/daemon.d.ts +5 -19
- package/dist/daemon/daemon.d.ts.map +1 -1
- package/dist/daemon/daemon.js +54 -51
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/daemon.module.d.ts.map +1 -1
- package/dist/daemon/daemon.module.js +3 -5
- package/dist/daemon/daemon.module.js.map +1 -1
- package/dist/daemon/daemon.rpc-service.d.ts +2 -2
- package/dist/daemon/daemon.rpc-service.js +6 -6
- package/dist/daemon/daemon.rpc-service.js.map +1 -1
- package/dist/execution/data-channel.d.ts +1 -1
- package/dist/execution/data-channel.js +1 -1
- package/dist/execution/execution.service.d.ts +10 -3
- package/dist/execution/execution.service.d.ts.map +1 -1
- package/dist/execution/execution.service.js +101 -44
- package/dist/execution/execution.service.js.map +1 -1
- package/dist/infrastructure/bare-metal-plan.js +1 -1
- package/dist/infrastructure/bare-metal-plan.js.map +1 -1
- package/dist/infrastructure/config-payload.d.ts +4 -4
- package/dist/infrastructure/config-payload.js +4 -4
- package/dist/infrastructure/container-runtime.d.ts +2 -10
- package/dist/infrastructure/container-runtime.d.ts.map +1 -1
- package/dist/infrastructure/container-runtime.js +41 -20
- package/dist/infrastructure/container-runtime.js.map +1 -1
- package/dist/infrastructure/gateway-redis-db.d.ts +2 -2
- package/dist/infrastructure/gateway-redis-db.js +2 -2
- package/dist/infrastructure/host-ingress-config.d.ts +12 -0
- package/dist/infrastructure/host-ingress-config.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress-config.js +197 -0
- package/dist/infrastructure/host-ingress-config.js.map +1 -0
- package/dist/infrastructure/host-ingress-lock.d.ts +4 -0
- package/dist/infrastructure/host-ingress-lock.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress-lock.js +36 -0
- package/dist/infrastructure/host-ingress-lock.js.map +1 -0
- package/dist/infrastructure/host-ingress-runtime.d.ts +25 -0
- package/dist/infrastructure/host-ingress-runtime.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress-runtime.js +114 -0
- package/dist/infrastructure/host-ingress-runtime.js.map +1 -0
- package/dist/infrastructure/host-ingress-takeover.d.ts +18 -0
- package/dist/infrastructure/host-ingress-takeover.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress-takeover.js +142 -0
- package/dist/infrastructure/host-ingress-takeover.js.map +1 -0
- package/dist/infrastructure/host-ingress-types.d.ts +173 -0
- package/dist/infrastructure/host-ingress-types.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress-types.js +2 -0
- package/dist/infrastructure/host-ingress-types.js.map +1 -0
- package/dist/infrastructure/host-ingress.service.d.ts +47 -0
- package/dist/infrastructure/host-ingress.service.d.ts.map +1 -0
- package/dist/infrastructure/host-ingress.service.js +514 -0
- package/dist/infrastructure/host-ingress.service.js.map +1 -0
- package/dist/infrastructure/infrastructure.service.d.ts +21 -5
- package/dist/infrastructure/infrastructure.service.d.ts.map +1 -1
- package/dist/infrastructure/infrastructure.service.js +91 -10
- package/dist/infrastructure/infrastructure.service.js.map +1 -1
- package/dist/infrastructure/orphan-containers.d.ts +7 -7
- package/dist/infrastructure/orphan-containers.js +6 -6
- package/dist/infrastructure/presets/minio.js +1 -1
- package/dist/infrastructure/presets/minio.js.map +1 -1
- package/dist/infrastructure/provisioning-outcome.d.ts +1 -1
- package/dist/infrastructure/provisioning-outcome.js +1 -1
- package/dist/infrastructure/service-binding.js +1 -1
- package/dist/infrastructure/service-resolver.d.ts +10 -4
- package/dist/infrastructure/service-resolver.d.ts.map +1 -1
- package/dist/infrastructure/service-resolver.js +88 -45
- package/dist/infrastructure/service-resolver.js.map +1 -1
- package/dist/infrastructure/shipped-config.js +4 -4
- package/dist/infrastructure/stack-infra-manager.d.ts +10 -1
- package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -1
- package/dist/infrastructure/stack-infra-manager.js +53 -43
- package/dist/infrastructure/stack-infra-manager.js.map +1 -1
- package/dist/infrastructure/types.d.ts +8 -6
- package/dist/infrastructure/types.d.ts.map +1 -1
- package/dist/monitoring/log-line.d.ts +3 -3
- package/dist/monitoring/log-line.js +3 -3
- package/dist/monitoring/log-manager.d.ts +3 -3
- package/dist/monitoring/log-manager.js +3 -3
- package/dist/operations.d.ts +16 -0
- package/dist/operations.d.ts.map +1 -0
- package/dist/operations.js +13 -0
- package/dist/operations.js.map +1 -0
- package/dist/orchestrator/app-handle.d.ts +3 -3
- package/dist/orchestrator/app-handle.js +3 -3
- package/dist/orchestrator/bootstrap-loader.d.ts +2 -2
- package/dist/orchestrator/bootstrap-loader.js +3 -3
- package/dist/orchestrator/bootstrap-loader.js.map +1 -1
- package/dist/orchestrator/bootstrap-process.d.ts +1 -1
- package/dist/orchestrator/bootstrap-process.d.ts.map +1 -1
- package/dist/orchestrator/bootstrap-process.js +3 -2
- package/dist/orchestrator/bootstrap-process.js.map +1 -1
- package/dist/orchestrator/build-service.d.ts +6 -12
- package/dist/orchestrator/build-service.d.ts.map +1 -1
- package/dist/orchestrator/build-service.js +120 -83
- package/dist/orchestrator/build-service.js.map +1 -1
- package/dist/orchestrator/call-exposed-service.js +1 -1
- package/dist/orchestrator/classic-launcher.d.ts.map +1 -1
- package/dist/orchestrator/classic-launcher.js +6 -1
- package/dist/orchestrator/classic-launcher.js.map +1 -1
- package/dist/orchestrator/file-watcher.d.ts +1 -0
- package/dist/orchestrator/file-watcher.d.ts.map +1 -1
- package/dist/orchestrator/file-watcher.js +14 -3
- package/dist/orchestrator/file-watcher.js.map +1 -1
- package/dist/orchestrator/http-routes.d.ts +4 -0
- package/dist/orchestrator/http-routes.d.ts.map +1 -0
- package/dist/orchestrator/http-routes.js +19 -0
- package/dist/orchestrator/http-routes.js.map +1 -0
- package/dist/orchestrator/orchestrator.service.d.ts +18 -4
- package/dist/orchestrator/orchestrator.service.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator.service.js +151 -110
- package/dist/orchestrator/orchestrator.service.js.map +1 -1
- package/dist/orchestrator/service-router.d.ts +1 -1
- package/dist/orchestrator/service-router.js +1 -1
- package/dist/orchestrator/topology-query.d.ts +1 -1
- package/dist/orchestrator/topology-query.js +1 -1
- package/dist/project/artifact-builder.js +2 -2
- package/dist/project/artifact-builder.js.map +1 -1
- package/dist/project/build-decision.d.ts +1 -1
- package/dist/project/build-decision.js +1 -1
- package/dist/project/config-resolver.js +1 -1
- package/dist/project/config-resolver.js.map +1 -1
- package/dist/project/declared-config.d.ts +2 -2
- package/dist/project/declared-config.js +2 -2
- package/dist/project/deploy-phases.d.ts +1 -1
- package/dist/project/deploy-phases.js +1 -1
- package/dist/project/exec-in-group.d.ts +1 -1
- package/dist/project/exec-in-group.js +1 -1
- package/dist/project/node-app-config.d.ts +2 -2
- package/dist/project/node-app-config.js +2 -2
- package/dist/project/node-app-config.js.map +1 -1
- package/dist/project/node-app-health.d.ts +1 -1
- package/dist/project/node-app-health.js +1 -1
- package/dist/project/operator-account.d.ts +9 -3
- package/dist/project/operator-account.d.ts.map +1 -1
- package/dist/project/operator-account.js +9 -9
- package/dist/project/operator-account.js.map +1 -1
- package/dist/project/registry.d.ts.map +1 -1
- package/dist/project/registry.js +4 -22
- package/dist/project/registry.js.map +1 -1
- package/dist/project/stack-env.d.ts +1 -1
- package/dist/project/stack-env.js +1 -1
- package/dist/project/stand-containers.d.ts +9 -2
- package/dist/project/stand-containers.d.ts.map +1 -1
- package/dist/project/stand-containers.js +17 -17
- package/dist/project/stand-containers.js.map +1 -1
- package/dist/release/artifact-store.d.ts +1 -1
- package/dist/release/artifact-store.d.ts.map +1 -1
- package/dist/release/artifact-store.js +1 -1
- package/dist/release/artifact-store.js.map +1 -1
- package/dist/release/attest-on-node.d.ts +3 -2
- package/dist/release/attest-on-node.d.ts.map +1 -1
- package/dist/release/attest-on-node.js +6 -6
- package/dist/release/attest-on-node.js.map +1 -1
- package/dist/release/attest.d.ts +3 -3
- package/dist/release/attest.js +1 -1
- package/dist/release/build-run.d.ts +2 -2
- package/dist/release/build-run.js +4 -4
- package/dist/release/build-run.js.map +1 -1
- package/dist/release/builder.d.ts +1 -1
- package/dist/release/builder.d.ts.map +1 -1
- package/dist/release/builder.js +1 -1
- package/dist/release/builder.js.map +1 -1
- package/dist/release/daemon-omni.d.ts +1 -1
- package/dist/release/daemon-omni.js +1 -1
- package/dist/release/definition-inputs.d.ts +1 -1
- package/dist/release/definition-inputs.js +1 -1
- package/dist/release/layout.d.ts +2 -2
- package/dist/release/layout.js +2 -2
- package/dist/release/manifest.d.ts +1 -1
- package/dist/release/manifest.js +1 -1
- package/dist/release/publish.d.ts +1 -1
- package/dist/release/publish.js +1 -1
- package/dist/release/store.d.ts +1 -1
- package/dist/release/store.d.ts.map +1 -1
- package/dist/release/store.js +3 -3
- package/dist/release/store.js.map +1 -1
- package/dist/services/alert.service.d.ts +2 -2
- package/dist/services/alert.service.js +2 -2
- package/dist/services/backup-pipeline.d.ts +1 -1
- package/dist/services/backup-pipeline.js +1 -1
- package/dist/services/backup.service.d.ts +3 -3
- package/dist/services/backup.service.js +3 -3
- package/dist/services/bundle-builder.d.ts +15 -12
- package/dist/services/bundle-builder.d.ts.map +1 -1
- package/dist/services/bundle-builder.js +124 -48
- package/dist/services/bundle-builder.js.map +1 -1
- package/dist/services/discovery.service.d.ts +1 -1
- package/dist/services/discovery.service.js +1 -1
- package/dist/services/host-operation-barrier.d.ts +8 -0
- package/dist/services/host-operation-barrier.d.ts.map +1 -0
- package/dist/services/host-operation-barrier.js +44 -0
- package/dist/services/host-operation-barrier.js.map +1 -0
- package/dist/services/host-upgrade.d.ts +129 -0
- package/dist/services/host-upgrade.d.ts.map +1 -0
- package/dist/services/host-upgrade.js +352 -0
- package/dist/services/host-upgrade.js.map +1 -0
- package/dist/services/infrastructure.rpc-service.d.ts +16 -1
- package/dist/services/infrastructure.rpc-service.d.ts.map +1 -1
- package/dist/services/infrastructure.rpc-service.js +71 -10
- package/dist/services/infrastructure.rpc-service.js.map +1 -1
- package/dist/services/local-bundle.d.ts +9 -0
- package/dist/services/local-bundle.d.ts.map +1 -1
- package/dist/services/local-bundle.js +11 -2
- package/dist/services/local-bundle.js.map +1 -1
- package/dist/services/log-collector.service.d.ts +1 -1
- package/dist/services/log-collector.service.js +1 -1
- package/dist/services/maintenance-lock.d.ts +2 -2
- package/dist/services/maintenance-lock.d.ts.map +1 -1
- package/dist/services/maintenance-lock.js +1 -1
- package/dist/services/migration-output.d.ts +2 -2
- package/dist/services/migration-output.js +2 -2
- package/dist/services/node-deploy-lease.d.ts +19 -2
- package/dist/services/node-deploy-lease.d.ts.map +1 -1
- package/dist/services/node-deploy-lease.js +84 -10
- package/dist/services/node-deploy-lease.js.map +1 -1
- package/dist/services/node-manager.rpc-service.d.ts +6 -1
- package/dist/services/node-manager.rpc-service.d.ts.map +1 -1
- package/dist/services/node-manager.rpc-service.js +25 -1
- package/dist/services/node-manager.rpc-service.js.map +1 -1
- package/dist/services/node-manager.service.d.ts +1 -1
- package/dist/services/node-manager.service.js +1 -1
- package/dist/services/node-upgrade.d.ts +1 -1
- package/dist/services/pipeline.rpc-service.d.ts +4 -0
- package/dist/services/pipeline.rpc-service.d.ts.map +1 -1
- package/dist/services/pipeline.rpc-service.js +9 -0
- package/dist/services/pipeline.rpc-service.js.map +1 -1
- package/dist/services/pipeline.service.d.ts +2 -0
- package/dist/services/pipeline.service.d.ts.map +1 -1
- package/dist/services/pipeline.service.js +12 -0
- package/dist/services/pipeline.service.js.map +1 -1
- package/dist/services/project.rpc-service.d.ts +7 -0
- package/dist/services/project.rpc-service.d.ts.map +1 -1
- package/dist/services/project.rpc-service.js +11 -0
- package/dist/services/project.rpc-service.js.map +1 -1
- package/dist/services/project.service.d.ts +21 -11
- package/dist/services/project.service.d.ts.map +1 -1
- package/dist/services/project.service.js +74 -59
- package/dist/services/project.service.js.map +1 -1
- package/dist/services/redeploy-decision.d.ts +2 -2
- package/dist/services/redeploy-decision.js +1 -1
- package/dist/services/release.rpc-service.d.ts +1 -1
- package/dist/services/release.rpc-service.js +1 -1
- package/dist/services/remote-deployer.service.d.ts +27 -16
- package/dist/services/remote-deployer.service.d.ts.map +1 -1
- package/dist/services/remote-deployer.service.js +269 -101
- package/dist/services/remote-deployer.service.js.map +1 -1
- package/dist/services/remote-provisioner.d.ts +2 -0
- package/dist/services/remote-provisioner.d.ts.map +1 -1
- package/dist/services/remote-provisioner.js +1 -1
- package/dist/services/remote-provisioner.js.map +1 -1
- package/dist/services/static-carry-forward.d.ts +26 -1
- package/dist/services/static-carry-forward.d.ts.map +1 -1
- package/dist/services/static-carry-forward.js +275 -1
- package/dist/services/static-carry-forward.js.map +1 -1
- package/dist/shared/dto/nodes.d.ts +2 -2
- package/dist/shared/dto/services.d.ts +27 -0
- package/dist/shared/dto/services.d.ts.map +1 -1
- package/dist/shared/local-infra-host.d.ts +2 -2
- package/dist/shared/local-infra-host.js +2 -2
- package/dist/shared/release-reading.d.ts +1 -1
- package/dist/shared/release-reading.js +1 -1
- package/package.json +16 -12
- package/webapp/dist/BUILD.json +2 -2
- package/webapp/dist/assets/FormControlLabel-BbSxpQwN.js +1 -0
- package/webapp/dist/assets/{Grid-BZ7xhoHQ.js → Grid-DizFZYue.js} +1 -1
- package/webapp/dist/assets/{Switch-DGSAxQPM.js → Switch-Bfiqzx8l.js} +1 -1
- package/webapp/dist/assets/alerts-DH_RVRS3.js +1 -0
- package/webapp/dist/assets/apps-B96355sz.js +1 -0
- package/webapp/dist/assets/audit-CYGtbi4k.js +1 -0
- package/webapp/dist/assets/client-BmqFExWT.js +1 -0
- package/webapp/dist/assets/containers-B_TpThln.js +2 -0
- package/webapp/dist/assets/dashboard-DHf2_65N.js +1 -0
- package/webapp/dist/assets/dashboard-builder-CWY2pjeG.js +1 -0
- package/webapp/dist/assets/{deploy-release-dialog-D6C-XcKY.js → deploy-release-dialog-Dp-zpSAd.js} +1 -1
- package/webapp/dist/assets/deployments-tJI6O3fK.js +1 -0
- package/webapp/dist/assets/detail-B2zP1Hto.js +8 -0
- package/webapp/dist/assets/detail-CoIrwmsy.js +1 -0
- package/webapp/dist/assets/detail-DWaGaOtL.js +2 -0
- package/webapp/dist/assets/index-Dvo0iprx.css +1 -0
- package/webapp/dist/assets/index-vMnY_4jR.js +412 -0
- package/webapp/dist/assets/logs-DTRjOfX8.js +12 -0
- package/webapp/dist/assets/maplibre-gl-DowHoZAx.js +814 -0
- package/webapp/dist/assets/{metrics-CQgjz2Lz.js → metrics-UCajtdox.js} +2 -2
- package/webapp/dist/assets/nodes-DuTVU0f6.js +7 -0
- package/webapp/dist/assets/pipelines-C8BeDcAl.js +4 -0
- package/webapp/dist/assets/projects-Dp_zFfLY.js +1 -0
- package/webapp/dist/assets/react-DlmbjZJV.js +1 -0
- package/webapp/dist/assets/react-apexcharts.esm-C8pn45ml.js +97 -0
- package/webapp/dist/assets/{release-bits-Dj4EOhhb.js → release-bits-BzTKz5fM.js} +1 -1
- package/webapp/dist/assets/release-build-panel-DcW9YcXQ.js +1 -0
- package/webapp/dist/assets/releases-B4hcr1bE.js +2 -0
- package/webapp/dist/assets/rolldown-runtime-XKyaHtl9.js +1 -0
- package/webapp/dist/assets/settings-DIteZTbe.js +1 -0
- package/webapp/dist/assets/sign-in-D4kMBOHp.js +1 -0
- package/webapp/dist/assets/stacks-Brnf-EB7.js +1 -0
- package/webapp/dist/assets/{system-info-BtE3dgfw.js → system-info-CFDNVKkU.js} +1 -1
- package/webapp/dist/assets/topology-7WeTUsDN.js +12 -0
- package/webapp/dist/assets/traces-9c3gwCN-.js +1 -0
- package/webapp/dist/assets/{use-stack-context-CZUgPq88.js → use-stack-context-CnA5FTHu.js} +1 -1
- package/webapp/dist/index.html +6 -6
- package/webapp/dist/assets/FormControlLabel-BrH2diyl.js +0 -1
- package/webapp/dist/assets/alerts-sXqHJbsa.js +0 -1
- package/webapp/dist/assets/apps-B_Ah8Flh.js +0 -1
- package/webapp/dist/assets/audit-YXihwyui.js +0 -1
- package/webapp/dist/assets/client-CGbBvy9k.js +0 -1
- package/webapp/dist/assets/containers-Di4NOTLf.js +0 -2
- package/webapp/dist/assets/dashboard-Cfuf95N3.js +0 -1
- package/webapp/dist/assets/dashboard-builder-CowaYb-M.js +0 -1
- package/webapp/dist/assets/deployments-ChTq5kCw.js +0 -1
- package/webapp/dist/assets/detail-BsGWv7Dj.js +0 -1
- package/webapp/dist/assets/detail-CyVf_cw5.js +0 -2
- package/webapp/dist/assets/detail-D027j6aO.js +0 -8
- package/webapp/dist/assets/index-B8AHIPc-.css +0 -1
- package/webapp/dist/assets/index-DiZbrwxT.js +0 -414
- package/webapp/dist/assets/logs-L2b8Oqmo.js +0 -12
- package/webapp/dist/assets/maplibre-gl-MlmG2kbn.js +0 -801
- package/webapp/dist/assets/nodes-Nwia2Ty6.js +0 -7
- package/webapp/dist/assets/pipelines-DCu_rXOr.js +0 -4
- package/webapp/dist/assets/projects-Bb4aV76h.js +0 -1
- package/webapp/dist/assets/react-CwJFpaho.js +0 -1
- package/webapp/dist/assets/react-apexcharts.esm-Dy0Fez42.js +0 -1956
- package/webapp/dist/assets/release-build-panel-D6OCVlhT.js +0 -1
- package/webapp/dist/assets/releases-CnAt3yO6.js +0 -2
- package/webapp/dist/assets/rolldown-runtime-hePW80VL.js +0 -1
- package/webapp/dist/assets/settings-DU-mjiwb.js +0 -1
- package/webapp/dist/assets/sign-in-Bcvjrr4C.js +0 -1
- package/webapp/dist/assets/stacks-B-e8p50I.js +0 -1
- package/webapp/dist/assets/topology-Cwch-uF1.js +0 -12
- package/webapp/dist/assets/traces-BbShR-4P.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.service.d.ts","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAwB,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAE3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAa1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAEnF,OAAO,KAAK,EACV,gBAAgB,EAQjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,oBAAoB,EAA0B,MAAM,4BAA4B,CAAC;AAC/F,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,YAAY,EAKZ,oBAAoB,EAErB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"project.service.d.ts","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ import { reportPhases } from '../project/deploy-phases.js';
|
|
|
24
24
|
import { effectiveAppName } from '../orchestrator/orchestrator.service.js';
|
|
25
25
|
import { summariseSync } from './sync-summary.js';
|
|
26
26
|
import { StackInfrastructureManager } from '../infrastructure/stack-infra-manager.js';
|
|
27
|
+
import { describeProvisioning, summariseProvisioning } from '../infrastructure/provisioning-outcome.js';
|
|
27
28
|
import { waitForPostgres } from './wait-for-postgres.js';
|
|
28
29
|
import { resolveStack, resolvedConfigToEnv } from '../project/config-resolver.js';
|
|
29
30
|
import { resolveStartupOrder } from '../orchestrator/dependency-resolver.js';
|
|
@@ -114,7 +115,7 @@ export class ProjectService extends EventEmitter {
|
|
|
114
115
|
audit;
|
|
115
116
|
constructor(logger, orchestrator, daemonStateStore,
|
|
116
117
|
/**
|
|
117
|
-
*
|
|
118
|
+
* Optional local collaborators — by NAME. Both daemon roles have a vault. These were four more
|
|
118
119
|
* positional parameters, and the daemon's factory passed them through an
|
|
119
120
|
* `any`: `new ProjectService(logger, orchestrator, dStore, fleet,
|
|
120
121
|
* undefined, secrets, audit)`. A slot removed or reordered there moves
|
|
@@ -228,12 +229,12 @@ export class ProjectService extends EventEmitter {
|
|
|
228
229
|
// Already registered AT THIS PATH: read it again rather than refuse.
|
|
229
230
|
//
|
|
230
231
|
// A deployment registers a node's project after writing its config, on
|
|
231
|
-
// every deployment. The node answered «Project '
|
|
232
|
+
// every deployment. The node answered «Project 'sample' already registered»
|
|
232
233
|
// to every one after the first (four in two days, measured), the
|
|
233
234
|
// deployer's SSH step failed on the exit code, and the node never read
|
|
234
235
|
// the config it had just been given — a redeployment that changed an
|
|
235
|
-
// app's environment restarted the app on the old one (
|
|
236
|
-
//
|
|
236
|
+
// app's environment restarted the app on the old one (payments on
|
|
237
|
+
// sample/test, pointed at the chain's previous address, 2026-09-23). A
|
|
237
238
|
// different path under the same name is still refused: that is another
|
|
238
239
|
// project, not the same one again.
|
|
239
240
|
const existing = this.registry.get(name);
|
|
@@ -273,7 +274,7 @@ export class ProjectService extends EventEmitter {
|
|
|
273
274
|
const build = this.stackEntryBuilder(name, state.stack, stackConfig, config, definitions, stackEnv);
|
|
274
275
|
for (const entry of entries) {
|
|
275
276
|
const built = build(entry);
|
|
276
|
-
if (this.orchestrator.redefineApp(built.name, built))
|
|
277
|
+
if (await this.orchestrator.redefineApp(built.name, built))
|
|
277
278
|
redefined += 1;
|
|
278
279
|
}
|
|
279
280
|
}
|
|
@@ -281,24 +282,42 @@ export class ProjectService extends EventEmitter {
|
|
|
281
282
|
this.emit('project:updated', name, {});
|
|
282
283
|
return redefined;
|
|
283
284
|
}
|
|
285
|
+
/** Refresh only local container monitoring from the current validated project config. */
|
|
286
|
+
async refreshInfrastructureOwnership(projectName, stackName) {
|
|
287
|
+
const project = this.registry.get(projectName);
|
|
288
|
+
if (!project)
|
|
289
|
+
throw new Error(`Project '${projectName}' not found`);
|
|
290
|
+
this.configRegistry.delete(projectName);
|
|
291
|
+
const config = await this.loadProjectConfig(projectName);
|
|
292
|
+
const stack = this.resolveStacks(config, projectName)[stackName];
|
|
293
|
+
if (!stack || stack.type !== 'local')
|
|
294
|
+
throw new Error('Ownership refresh requires a declared local stack');
|
|
295
|
+
const definitions = await this.loadAppDefinitions(projectName, stack, config);
|
|
296
|
+
// The same requirements merge used at stack start. A failed fresh scan must
|
|
297
|
+
// refuse a handoff rather than silently releasing auto-detected services.
|
|
298
|
+
const { scanRequirements, buildInfraFromRequirements } = await import('../project/requirements-scanner.js');
|
|
299
|
+
const auto = buildInfraFromRequirements(await scanRequirements(this.resolveStackApps(stack, config), project.path));
|
|
300
|
+
const explicit = mergeInfrastructure(config, stack);
|
|
301
|
+
const effective = { ...auto, ...explicit, services: { ...explicit?.services } };
|
|
302
|
+
return this.infraManager.refreshOwnership(projectName, stackName, stack, effective, definitions, project.path);
|
|
303
|
+
}
|
|
284
304
|
updateProject(name, data) {
|
|
285
305
|
const project = this.registry.get(name);
|
|
286
306
|
if (!project)
|
|
287
307
|
throw new Error(`Project '${name}' not found`);
|
|
288
308
|
if (data.path) {
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
this.logger.info({ oldName: name, newName: updated.name, path: data.path }, 'Project renamed and path updated');
|
|
296
|
-
this.emit('project:renamed', name, updated.name);
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
this.logger.info({ project: name, path: data.path }, 'Project path updated');
|
|
309
|
+
const nextPath = path.resolve(data.path);
|
|
310
|
+
if (nextPath !== path.resolve(project.path)) {
|
|
311
|
+
const running = this.getRunningStacks(name);
|
|
312
|
+
if (running.length > 0) {
|
|
313
|
+
throw new Error(`Project '${name}' has running stacks: ${running.join(', ')}. Stop them before changing its path.`);
|
|
314
|
+
}
|
|
300
315
|
}
|
|
301
|
-
|
|
316
|
+
// Validate and persist first. A rejected path must not invalidate a live config.
|
|
317
|
+
const updated = this.registry.updatePath(name, nextPath);
|
|
318
|
+
this.configRegistry.delete(name);
|
|
319
|
+
this.logger.info({ project: name, path: nextPath }, 'Project path updated');
|
|
320
|
+
this.emit('project:updated', name, data);
|
|
302
321
|
return this.toProjectInfo(updated);
|
|
303
322
|
}
|
|
304
323
|
return this.toProjectInfo(project);
|
|
@@ -524,12 +543,12 @@ export class ProjectService extends EventEmitter {
|
|
|
524
543
|
* loaded and the short-circuits above have run — so two callers that arrive
|
|
525
544
|
* together both see no state and both proceed. Measured on the test stack:
|
|
526
545
|
* the daemon's own `startProjectStacks` on boot and an operator's
|
|
527
|
-
* `omnitron stack start
|
|
546
|
+
* `omnitron stack start sample test` landed within twenty seconds of each
|
|
528
547
|
* other, and ran the whole remote deployment TWICE, concurrently.
|
|
529
548
|
*
|
|
530
549
|
* That is not merely wasteful. The artifact build rebuilds shared packages
|
|
531
550
|
* whose `build` script is `rm -rf dist && tsc`, so one pass emptied
|
|
532
|
-
* `@omnitron-dev/titan-database/dist` while the other compiled `@
|
|
551
|
+
* `@omnitron-dev/titan-database/dist` while the other compiled `@sample/main`
|
|
533
552
|
* against it:
|
|
534
553
|
*
|
|
535
554
|
* src/modules/rbac/rls-schema.ts(53,41): error TS2307: Cannot find
|
|
@@ -566,7 +585,7 @@ export class ProjectService extends EventEmitter {
|
|
|
566
585
|
* the trail began (2026-09-20 15:37Z), not one of them a failure, against
|
|
567
586
|
* the log's eight operator starts that threw — five dirty-tree refusals
|
|
568
587
|
* (09-22 04:37:24 … 08:27:49), a release refused for a failed gate
|
|
569
|
-
* (15:12:41), «
|
|
588
|
+
* (15:12:41), «sample/test takes releases only» (15:32:43), and the
|
|
570
589
|
* deployment of 21:19:02 that failed on 6 of 6 apps, followed at 21:20:37
|
|
571
590
|
* by the redeploy the trail DID record, alone, as if it had been the only
|
|
572
591
|
* attempt.
|
|
@@ -713,7 +732,7 @@ export class ProjectService extends EventEmitter {
|
|
|
713
732
|
// applications because they run on the node — so `down` was all six,
|
|
714
733
|
// every time, and this short-circuit could never fire for a remote
|
|
715
734
|
// stack. Measured 2026-09-22: six occurrences, every one of them
|
|
716
|
-
// `down: [main, storage,
|
|
735
|
+
// `down: [main, storage, quotes, payments, messaging, geo]` against
|
|
717
736
|
// a node where all six were online with pids and uptimes to show for
|
|
718
737
|
// it. Each fell through to a full deployment of a stack that needed
|
|
719
738
|
// nothing — which is most of the «four master restarts, four full
|
|
@@ -768,7 +787,7 @@ export class ProjectService extends EventEmitter {
|
|
|
768
787
|
this.logger.info({ project: projectName, stack: stackName, source }, 'Stack started');
|
|
769
788
|
const info = this.toStackInfo(projectName, stackName, stackConfig);
|
|
770
789
|
// What did not come up, said in the row. A boot at 12:14 UTC on
|
|
771
|
-
// 2026-09-23 started
|
|
790
|
+
// 2026-09-23 started sample/dev with payments and messaging errored and
|
|
772
791
|
// recorded `outcome: ok, apps: 6`: the stack «started», two of its six
|
|
773
792
|
// apps never did. For a local stack the apps are this daemon's; for a
|
|
774
793
|
// remote one, what did not happen is a node that was skipped.
|
|
@@ -893,7 +912,7 @@ export class ProjectService extends EventEmitter {
|
|
|
893
912
|
*
|
|
894
913
|
* For a remote stack that is the node. This counted `this.orchestrator
|
|
895
914
|
* .list()` — the MASTER's process table — which lists none of a remote
|
|
896
|
-
* stack's applications, so `stack runtime
|
|
915
|
+
* stack's applications, so `stack runtime sample test` answered
|
|
897
916
|
* `totalApps: 0, onlineApps: 0, connectedNodes: 0` while `stack status`
|
|
898
917
|
* listed six apps online from the same node, three times in three seconds
|
|
899
918
|
* (measured 2026-09-22). The JSON surface is the one a script and a
|
|
@@ -1061,7 +1080,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1061
1080
|
throw new Error(`${projectName}/${stackName} is local: its probes run on this machine with \`node scripts/attest.mjs --stack=${stackName}\`, and need no transport`);
|
|
1062
1081
|
}
|
|
1063
1082
|
// The probes write to the system they measure — accounts, organisations,
|
|
1064
|
-
//
|
|
1083
|
+
// payments accounts with their deposit addresses (on sample/test, 2026-09-24:
|
|
1065
1084
|
// 91 probe organisations in the public catalogue, 10 mainnet addresses on
|
|
1066
1085
|
// accounts nobody owns). So they run only where a stack said they may,
|
|
1067
1086
|
// and never on one that takes other stacks' attestations: a stack that
|
|
@@ -1122,7 +1141,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1122
1141
|
// Through the data channel: the producer's line is evidence to
|
|
1123
1142
|
// store, and a probe's output that said `password=…` was cut by
|
|
1124
1143
|
// the transport's masker through its closing quote.
|
|
1125
|
-
const run = await this.deployer.readFromNode(target, attestationCommand({ remoteDir, stack: stackName, releaseId, containerPrefix, provision: accounts === 'provisioned' }));
|
|
1144
|
+
const run = await this.deployer.readFromNode(target, attestationCommand({ projectName, remoteDir, stack: stackName, releaseId, containerPrefix, provision: accounts === 'provisioned' }));
|
|
1126
1145
|
return { ...run, node: machine, scriptsFrom: staged.scriptsFrom, sourceFiles: staged.sourceFiles, accounts };
|
|
1127
1146
|
}
|
|
1128
1147
|
finally {
|
|
@@ -1201,7 +1220,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1201
1220
|
const key = await tool.sealingKey();
|
|
1202
1221
|
return this.withOperatorTool(projectName, stackName, `operator account ${username}`, async (on) => {
|
|
1203
1222
|
const facts = { project: projectName, stack: stackName, node: on.machine, username };
|
|
1204
|
-
const run = await on.run((remoteDir, containerPrefix) => tool.operatorAccountCommand({
|
|
1223
|
+
const run = await on.run((remoteDir, containerPrefix) => tool.operatorAccountCommand({ projectName,
|
|
1205
1224
|
remoteDir,
|
|
1206
1225
|
containerPrefix,
|
|
1207
1226
|
username,
|
|
@@ -1216,7 +1235,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1216
1235
|
// what is there and how to take it away.
|
|
1217
1236
|
let holds = '';
|
|
1218
1237
|
if (outcome.uncertain) {
|
|
1219
|
-
const shown = tool.readShowRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountShowCommand({ remoteDir, containerPrefix, username }), 60_000));
|
|
1238
|
+
const shown = tool.readShowRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountShowCommand({ projectName, remoteDir, containerPrefix, username }), 60_000));
|
|
1220
1239
|
holds = !shown.ok
|
|
1221
1240
|
? ` What the stand holds could not be read either: ${shown.because}`
|
|
1222
1241
|
: shown.account
|
|
@@ -1233,7 +1252,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1233
1252
|
}
|
|
1234
1253
|
catch (err) {
|
|
1235
1254
|
const why = err instanceof Error ? err.message : String(err);
|
|
1236
|
-
const undo = tool.readRemoveRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountRemoveCommand({ remoteDir, containerPrefix, username, id: account.id }), 120_000), username, account.id);
|
|
1255
|
+
const undo = tool.readRemoveRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountRemoveCommand({ projectName, remoteDir, containerPrefix, username, id: account.id }), 120_000), username, account.id);
|
|
1237
1256
|
this.logger.error({ ...facts, id: account.id, vaultKey, undone: undo.removed, error: why }, 'The vault refused an operator account\'s password');
|
|
1238
1257
|
throw new Error(undo.removed
|
|
1239
1258
|
? `${on.where}: the vault refused the password of ${username} (${why}) — the account was taken away again; nothing is left on the stand`
|
|
@@ -1307,7 +1326,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1307
1326
|
? 'rehearsal of removing what the probes left'
|
|
1308
1327
|
: 'removal of what the probes left';
|
|
1309
1328
|
return this.withOperatorTool(projectName, stackName, what, async (on) => {
|
|
1310
|
-
const read = tool.readLeftoversRun(await on.run((remoteDir, containerPrefix) => tool.probeLeftoversCommand({ remoteDir, containerPrefix, mode, also: request.also }),
|
|
1329
|
+
const read = tool.readLeftoversRun(await on.run((remoteDir, containerPrefix) => tool.probeLeftoversCommand({ projectName, remoteDir, containerPrefix, mode, also: request.also }),
|
|
1311
1330
|
// A rehearsal or a removal runs every database's removal and its
|
|
1312
1331
|
// invariants — longer than counting.
|
|
1313
1332
|
mode === 'census' ? 300_000 : 900_000), mode);
|
|
@@ -1329,7 +1348,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1329
1348
|
// Three minutes, not one: the census checks privileged accounts against
|
|
1330
1349
|
// every password the repository publishes with bcrypt at the stand's
|
|
1331
1350
|
// cost — 18 s for 17 accounts on the dev stand.
|
|
1332
|
-
const read = tool.readCensusRun(await on.run((remoteDir, containerPrefix) => tool.operatorCensusCommand({ remoteDir, containerPrefix }), 180_000));
|
|
1351
|
+
const read = tool.readCensusRun(await on.run((remoteDir, containerPrefix) => tool.operatorCensusCommand({ projectName, remoteDir, containerPrefix }), 180_000));
|
|
1333
1352
|
if (!read.ok)
|
|
1334
1353
|
throw new Error(`${on.where}: could not take the census: ${read.because}`);
|
|
1335
1354
|
return { node: on.machine, commit: on.commit, census: read.census };
|
|
@@ -1342,7 +1361,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1342
1361
|
throw new Error('Which account? (--show <name>)');
|
|
1343
1362
|
const tool = await import('../project/operator-account.js');
|
|
1344
1363
|
return this.withOperatorTool(projectName, stackName, `reading operator account ${name}`, async (on) => {
|
|
1345
|
-
const shown = tool.readShowRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountShowCommand({ remoteDir, containerPrefix, username: name }), 60_000));
|
|
1364
|
+
const shown = tool.readShowRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountShowCommand({ projectName, remoteDir, containerPrefix, username: name }), 60_000));
|
|
1346
1365
|
if (!shown.ok)
|
|
1347
1366
|
throw new Error(`${on.where}: could not read ${name}: ${shown.because}`);
|
|
1348
1367
|
return { node: on.machine, commit: on.commit, account: shown.account };
|
|
@@ -1362,7 +1381,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1362
1381
|
const tool = await import('../project/operator-account.js');
|
|
1363
1382
|
const vaultKey = input.vaultKey?.trim() || tool.accountVaultKey(projectName, stackName, username);
|
|
1364
1383
|
const removed = await this.withOperatorTool(projectName, stackName, `removing operator account ${username}`, async (on) => {
|
|
1365
|
-
const outcome = tool.readRemoveRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountRemoveCommand({ remoteDir, containerPrefix, username, id }), 120_000), username, id);
|
|
1384
|
+
const outcome = tool.readRemoveRun(await on.run((remoteDir, containerPrefix) => tool.operatorAccountRemoveCommand({ projectName, remoteDir, containerPrefix, username, id }), 120_000), username, id);
|
|
1366
1385
|
if (!outcome.removed)
|
|
1367
1386
|
throw new Error(`${on.where}: ${username} (id ${id}) was not removed: ${outcome.because}`);
|
|
1368
1387
|
return { node: on.machine, commit: on.commit };
|
|
@@ -1738,7 +1757,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1738
1757
|
this.resumeTimer = null;
|
|
1739
1758
|
}
|
|
1740
1759
|
this.slaveConnector?.dispose();
|
|
1741
|
-
|
|
1760
|
+
this.infraManager.dispose();
|
|
1742
1761
|
}
|
|
1743
1762
|
// ===========================================================================
|
|
1744
1763
|
// Config Management
|
|
@@ -1762,7 +1781,7 @@ export class ProjectService extends EventEmitter {
|
|
|
1762
1781
|
*
|
|
1763
1782
|
* A reader that arrived in the first seconds after a daemon start found no
|
|
1764
1783
|
* config and was answered with an error: measured on the master restarted
|
|
1765
|
-
* at 12:07:48 UTC, 20 ERROR lines «Project '
|
|
1784
|
+
* at 12:07:48 UTC, 20 ERROR lines «Project 'sample' config not loaded» from
|
|
1766
1785
|
* the console's `getStack` polls, logged as server failures and counted by
|
|
1767
1786
|
* `doctor` — for a project that loads a moment later, which is what the
|
|
1768
1787
|
* reconciler already does for itself (`loadProjectConfig` when absent).
|
|
@@ -2058,6 +2077,10 @@ export class ProjectService extends EventEmitter {
|
|
|
2058
2077
|
try {
|
|
2059
2078
|
const infraService = await this.infraManager.provisionStack(projectName, stackName, stackConfig, effectiveInfra, appDefinitions, project?.path);
|
|
2060
2079
|
state.infraService = infraService;
|
|
2080
|
+
const outcome = summariseProvisioning(infraService.getDesiredServices(), infraService.getState().services);
|
|
2081
|
+
if (!outcome.ready && !outcome.empty) {
|
|
2082
|
+
throw new Error(describeProvisioning(outcome));
|
|
2083
|
+
}
|
|
2061
2084
|
}
|
|
2062
2085
|
catch (err) {
|
|
2063
2086
|
const reason = err.message;
|
|
@@ -2443,8 +2466,8 @@ export class ProjectService extends EventEmitter {
|
|
|
2443
2466
|
// Writing one was the first attempt and it was worse than the problem:
|
|
2444
2467
|
// a stack with an infrastructure block is a stack the node PROVISIONS,
|
|
2445
2468
|
// so the node autostarted its own `deployed` stack, built a second
|
|
2446
|
-
// complete set of containers under `
|
|
2447
|
-
// and swept the master's `
|
|
2469
|
+
// complete set of containers under `sample-deployed-*` on empty volumes,
|
|
2470
|
+
// and swept the master's `sample-test-*` as orphans. An address is not an
|
|
2448
2471
|
// instruction to build what it points at.
|
|
2449
2472
|
phases.enter(`resolving the environment for ${node.host}`);
|
|
2450
2473
|
const appEnv = await this.resolveNodeAppEnv(ecosystemConfig, projectName, stackConfig, appEntries, deployedInfra);
|
|
@@ -2726,7 +2749,7 @@ export class ProjectService extends EventEmitter {
|
|
|
2726
2749
|
// it does, it means the node's daemon holds no infrastructure for it — it
|
|
2727
2750
|
// restarted since it last provisioned, and the step that would have
|
|
2728
2751
|
// provisioned it did not reach it. The declared password in its place is
|
|
2729
|
-
// wrong by construction: on
|
|
2752
|
+
// wrong by construction: on sample/test (2026-09-25) a deployment right
|
|
2730
2753
|
// after a `fleet upgrade` found the node 66 s into a 60 s mesh wait,
|
|
2731
2754
|
// «deployed anyway», configured six apps with `postgres`, and was stopped
|
|
2732
2755
|
// only because each app's migrations had to log in first.
|
|
@@ -3405,9 +3428,9 @@ export class ProjectService extends EventEmitter {
|
|
|
3405
3428
|
* node's own naming (`<project>/deployed/<app>`) — so every app came back
|
|
3406
3429
|
* `stopped` and the report was:
|
|
3407
3430
|
*
|
|
3408
|
-
* Stack
|
|
3409
|
-
* Not online: main (stopped), storage (stopped),
|
|
3410
|
-
*
|
|
3431
|
+
* Stack sample/test: only 0/6 apps came online.
|
|
3432
|
+
* Not online: main (stopped), storage (stopped), quotes (stopped),
|
|
3433
|
+
* payments (stopped), messaging (stopped), geo (stopped)
|
|
3411
3434
|
*
|
|
3412
3435
|
* measured against a node answering `appsTotal: 6, appsOnline: 6` with
|
|
3413
3436
|
* every port listening, thirty seconds after this same master installed,
|
|
@@ -3509,7 +3532,7 @@ export class ProjectService extends EventEmitter {
|
|
|
3509
3532
|
/**
|
|
3510
3533
|
* One node's infrastructure, named the way the stack names it.
|
|
3511
3534
|
*
|
|
3512
|
-
* The node's container names carry ITS prefix (`
|
|
3535
|
+
* The node's container names carry ITS prefix (`sample-test-postgres`), and
|
|
3513
3536
|
* a reader wants the service — `postgres` — so the same stripping the
|
|
3514
3537
|
* local path does is done here. `null` when the node cannot answer or has
|
|
3515
3538
|
* no infrastructure of its own, which leaves the master's view in place.
|
|
@@ -3558,29 +3581,16 @@ export class ProjectService extends EventEmitter {
|
|
|
3558
3581
|
// Build app list from config — include both running and stopped apps.
|
|
3559
3582
|
const ecosystemConfig = this.getLoadedConfig(projectName);
|
|
3560
3583
|
const configuredApps = ecosystemConfig ? this.resolveStackApps(config, ecosystemConfig) : [];
|
|
3561
|
-
|
|
3562
|
-
//
|
|
3563
|
-
//
|
|
3564
|
-
// map: the namespaced stack-mode path (`omni/dev/main`) and the
|
|
3565
|
-
// bare-name daemon-RPC path (`main`). Pre-fix the UI only saw the
|
|
3566
|
-
// first; a CLI `omnitron start main` (or any ecosystem.config entry
|
|
3567
|
-
// started before the stack-mode env vars were known) registered
|
|
3568
|
-
// bare and silently disappeared from the project/stack view, even
|
|
3569
|
-
// though `omnitron list` happily reported it online. By keying off
|
|
3570
|
-
// `effectiveAppName` we accept either form so the UI matches the
|
|
3571
|
-
// CLI's worldview. Cross-stack collisions on the same effective
|
|
3572
|
-
// name still resolve via the namespaced handle's prefix; the bare
|
|
3573
|
-
// fallback only applies when that name appears in this stack's
|
|
3574
|
-
// configured-app set, so an unrelated bare handle in another stack
|
|
3575
|
-
// never bleeds in.
|
|
3584
|
+
// A bare handle carries no project/stack ownership. Assigning it by basename
|
|
3585
|
+
// admitted the same process into every project that configured "api". Only an
|
|
3586
|
+
// exact namespace proves ownership; ad-hoc bare processes remain visible in list.
|
|
3576
3587
|
const runningByName = new Map();
|
|
3577
3588
|
for (const a of this.orchestrator.list()) {
|
|
3578
3589
|
const effective = effectiveAppName(a.name);
|
|
3579
3590
|
const inThisPrefix = a.name.startsWith(prefix);
|
|
3580
|
-
|
|
3581
|
-
if (!inThisPrefix && !inThisStackByName)
|
|
3591
|
+
if (!inThisPrefix)
|
|
3582
3592
|
continue;
|
|
3583
|
-
//
|
|
3593
|
+
// An exact qualified identity belongs to this stack only.
|
|
3584
3594
|
const existing = runningByName.get(effective);
|
|
3585
3595
|
if (!existing || a.name.startsWith(prefix)) {
|
|
3586
3596
|
runningByName.set(effective, a);
|
|
@@ -3730,4 +3740,9 @@ export const MASTER_PROJECT_SERVICE_PROVIDER = {
|
|
|
3730
3740
|
// RPC layer that used to record it.
|
|
3731
3741
|
new ProjectService(loggerModule.logger, orchestrator, daemonStateStore, { secrets, audit }),
|
|
3732
3742
|
};
|
|
3743
|
+
/** A slave has its own encrypted vault even though it has no master database/audit service. */
|
|
3744
|
+
export const SLAVE_PROJECT_SERVICE_PROVIDER = {
|
|
3745
|
+
inject: [LOGGER_SERVICE_TOKEN, ORCHESTRATOR_TOKEN, DAEMON_STATE_STORE_TOKEN, SECRETS_SERVICE_TOKEN],
|
|
3746
|
+
useFactory: (loggerModule, orchestrator, daemonStateStore, secrets) => new ProjectService(loggerModule.logger, orchestrator, daemonStateStore, { secrets }),
|
|
3747
|
+
};
|
|
3733
3748
|
//# sourceMappingURL=project.service.js.map
|