@mesh-tech/mesh-cli 0.1.0 → 0.12.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/assets/intent/agents-fence.md +10 -0
- package/assets/intent/intent-claude-gate.mjs +255 -0
- package/assets/log-shipper.mjs +94 -0
- package/bin/mesh.mjs +80 -0
- package/dist/bin/mesh.d.ts +7 -9
- package/dist/bin/mesh.d.ts.map +1 -1
- package/dist/bin/mesh.js +20826 -37
- package/dist/bin/mesh.js.map +7 -1
- package/dist/build-info.json +4 -0
- package/dist/src/commands/agent-api-client.d.ts +79 -0
- package/dist/src/commands/agent-api-client.d.ts.map +1 -0
- package/dist/src/commands/agent-api-client.js +170 -0
- package/dist/src/commands/agent-api-client.js.map +1 -0
- package/dist/src/commands/artifacts.d.ts +13 -0
- package/dist/src/commands/artifacts.d.ts.map +1 -0
- package/dist/src/commands/artifacts.js +140 -0
- package/dist/src/commands/artifacts.js.map +1 -0
- package/dist/src/commands/cluster.d.ts +45 -0
- package/dist/src/commands/cluster.d.ts.map +1 -0
- package/dist/src/commands/cluster.js +259 -0
- package/dist/src/commands/cluster.js.map +1 -0
- package/dist/src/commands/conversations.d.ts +61 -0
- package/dist/src/commands/conversations.d.ts.map +1 -0
- package/dist/src/commands/conversations.js +239 -0
- package/dist/src/commands/conversations.js.map +1 -0
- package/dist/src/commands/create-app.d.ts +26 -3
- package/dist/src/commands/create-app.d.ts.map +1 -1
- package/dist/src/commands/create-app.js +465 -107
- package/dist/src/commands/create-app.js.map +1 -1
- package/dist/src/commands/deploy.d.ts +19 -0
- package/dist/src/commands/deploy.d.ts.map +1 -1
- package/dist/src/commands/deploy.js +83 -142
- package/dist/src/commands/deploy.js.map +1 -1
- package/dist/src/commands/dev-doctor.d.ts +137 -0
- package/dist/src/commands/dev-doctor.d.ts.map +1 -0
- package/dist/src/commands/dev-doctor.js +671 -0
- package/dist/src/commands/dev-doctor.js.map +1 -0
- package/dist/src/commands/dev-launch.d.ts +59 -0
- package/dist/src/commands/dev-launch.d.ts.map +1 -0
- package/dist/src/commands/dev-launch.js +118 -0
- package/dist/src/commands/dev-launch.js.map +1 -0
- package/dist/src/commands/dev-token-server.d.ts +32 -0
- package/dist/src/commands/dev-token-server.d.ts.map +1 -0
- package/dist/src/commands/dev-token-server.js +68 -0
- package/dist/src/commands/dev-token-server.js.map +1 -0
- package/dist/src/commands/dev.d.ts +289 -2
- package/dist/src/commands/dev.d.ts.map +1 -1
- package/dist/src/commands/dev.js +2501 -574
- package/dist/src/commands/dev.js.map +1 -1
- package/dist/src/commands/docs.d.ts +3 -0
- package/dist/src/commands/docs.d.ts.map +1 -0
- package/dist/src/commands/docs.js +262 -0
- package/dist/src/commands/docs.js.map +1 -0
- package/dist/src/commands/hub/index.d.ts +99 -0
- package/dist/src/commands/hub/index.d.ts.map +1 -0
- package/dist/src/commands/hub/index.js +452 -0
- package/dist/src/commands/hub/index.js.map +1 -0
- package/dist/src/commands/init.d.ts +65 -0
- package/dist/src/commands/init.d.ts.map +1 -0
- package/dist/src/commands/init.js +370 -0
- package/dist/src/commands/init.js.map +1 -0
- package/dist/src/commands/install-shim.d.ts +21 -0
- package/dist/src/commands/install-shim.d.ts.map +1 -0
- package/dist/src/commands/install-shim.js +132 -0
- package/dist/src/commands/install-shim.js.map +1 -0
- package/dist/src/commands/local/auth-provision.d.ts +71 -0
- package/dist/src/commands/local/auth-provision.d.ts.map +1 -0
- package/dist/src/commands/local/auth-provision.js +286 -0
- package/dist/src/commands/local/auth-provision.js.map +1 -0
- package/dist/src/commands/local/dev-local.d.ts +97 -0
- package/dist/src/commands/local/dev-local.d.ts.map +1 -0
- package/dist/src/commands/local/dev-local.js +306 -0
- package/dist/src/commands/local/dev-local.js.map +1 -0
- package/dist/src/commands/local/docker-runner.d.ts +37 -0
- package/dist/src/commands/local/docker-runner.d.ts.map +1 -0
- package/dist/src/commands/local/docker-runner.js +104 -0
- package/dist/src/commands/local/docker-runner.js.map +1 -0
- package/dist/src/commands/local/helpers.d.ts +22 -0
- package/dist/src/commands/local/helpers.d.ts.map +1 -0
- package/dist/src/commands/local/helpers.js +46 -0
- package/dist/src/commands/local/helpers.js.map +1 -0
- package/dist/src/commands/local/hub-local.d.ts +51 -0
- package/dist/src/commands/local/hub-local.d.ts.map +1 -0
- package/dist/src/commands/local/hub-local.js +197 -0
- package/dist/src/commands/local/hub-local.js.map +1 -0
- package/dist/src/commands/local/index.d.ts +23 -0
- package/dist/src/commands/local/index.d.ts.map +1 -0
- package/dist/src/commands/local/index.js +386 -0
- package/dist/src/commands/local/index.js.map +1 -0
- package/dist/src/commands/local/mocks.d.ts +361 -0
- package/dist/src/commands/local/mocks.d.ts.map +1 -0
- package/dist/src/commands/local/mocks.js +756 -0
- package/dist/src/commands/local/mocks.js.map +1 -0
- package/dist/src/commands/local/seed-zitadel.d.ts +151 -0
- package/dist/src/commands/local/seed-zitadel.d.ts.map +1 -0
- package/dist/src/commands/local/seed-zitadel.js +408 -0
- package/dist/src/commands/local/seed-zitadel.js.map +1 -0
- package/dist/src/commands/local/seed.d.ts +106 -0
- package/dist/src/commands/local/seed.d.ts.map +1 -0
- package/dist/src/commands/local/seed.js +252 -0
- package/dist/src/commands/local/seed.js.map +1 -0
- package/dist/src/commands/local/stack.d.ts +173 -0
- package/dist/src/commands/local/stack.d.ts.map +1 -0
- package/dist/src/commands/local/stack.js +499 -0
- package/dist/src/commands/local/stack.js.map +1 -0
- package/dist/src/commands/login.d.ts +256 -12
- package/dist/src/commands/login.d.ts.map +1 -1
- package/dist/src/commands/login.js +978 -50
- package/dist/src/commands/login.js.map +1 -1
- package/dist/src/commands/peer-addressing.d.ts +51 -0
- package/dist/src/commands/peer-addressing.d.ts.map +1 -0
- package/dist/src/commands/peer-addressing.js +64 -0
- package/dist/src/commands/peer-addressing.js.map +1 -0
- package/dist/src/commands/port-ownership.d.ts +69 -0
- package/dist/src/commands/port-ownership.d.ts.map +1 -0
- package/dist/src/commands/port-ownership.js +161 -0
- package/dist/src/commands/port-ownership.js.map +1 -0
- package/dist/src/commands/registry-publish.d.ts +3 -0
- package/dist/src/commands/registry-publish.d.ts.map +1 -0
- package/dist/src/commands/registry-publish.js +161 -0
- package/dist/src/commands/registry-publish.js.map +1 -0
- package/dist/src/commands/registry.d.ts +146 -2
- package/dist/src/commands/registry.d.ts.map +1 -1
- package/dist/src/commands/registry.js +541 -85
- package/dist/src/commands/registry.js.map +1 -1
- package/dist/src/commands/secrets/index.d.ts.map +1 -1
- package/dist/src/commands/secrets/index.js +15 -1
- package/dist/src/commands/secrets/index.js.map +1 -1
- package/dist/src/commands/secrets/migrate-config.d.ts +24 -0
- package/dist/src/commands/secrets/migrate-config.d.ts.map +1 -0
- package/dist/src/commands/secrets/migrate-config.js +277 -0
- package/dist/src/commands/secrets/migrate-config.js.map +1 -0
- package/dist/src/commands/secrets/set.d.ts +4 -0
- package/dist/src/commands/secrets/set.d.ts.map +1 -1
- package/dist/src/commands/secrets/set.js +243 -64
- package/dist/src/commands/secrets/set.js.map +1 -1
- package/dist/src/commands/skills.d.ts +34 -0
- package/dist/src/commands/skills.d.ts.map +1 -0
- package/dist/src/commands/skills.js +207 -0
- package/dist/src/commands/skills.js.map +1 -0
- package/dist/src/commands/stack.d.ts.map +1 -1
- package/dist/src/commands/stack.js +361 -23
- package/dist/src/commands/stack.js.map +1 -1
- package/dist/src/commands/temporal.d.ts +15 -0
- package/dist/src/commands/temporal.d.ts.map +1 -0
- package/dist/src/commands/temporal.js +781 -0
- package/dist/src/commands/temporal.js.map +1 -0
- package/dist/src/commands/tenant.d.ts +56 -0
- package/dist/src/commands/tenant.d.ts.map +1 -0
- package/dist/src/commands/tenant.js +233 -0
- package/dist/src/commands/tenant.js.map +1 -0
- package/dist/src/commands/tunnel/index.d.ts +49 -3
- package/dist/src/commands/tunnel/index.d.ts.map +1 -1
- package/dist/src/commands/tunnel/index.js +331 -8
- package/dist/src/commands/tunnel/index.js.map +1 -1
- package/dist/src/commands/vcs/clone.d.ts +3 -0
- package/dist/src/commands/vcs/clone.d.ts.map +1 -0
- package/dist/src/commands/vcs/clone.js +20 -0
- package/dist/src/commands/vcs/clone.js.map +1 -0
- package/dist/src/commands/vcs/common.d.ts +21 -0
- package/dist/src/commands/vcs/common.d.ts.map +1 -0
- package/dist/src/commands/vcs/common.js +62 -0
- package/dist/src/commands/vcs/common.js.map +1 -0
- package/dist/src/commands/vcs/drafts.d.ts +13 -0
- package/dist/src/commands/vcs/drafts.d.ts.map +1 -0
- package/dist/src/commands/vcs/drafts.js +45 -0
- package/dist/src/commands/vcs/drafts.js.map +1 -0
- package/dist/src/commands/vcs/get.d.ts +8 -0
- package/dist/src/commands/vcs/get.d.ts.map +1 -0
- package/dist/src/commands/vcs/get.js +61 -0
- package/dist/src/commands/vcs/get.js.map +1 -0
- package/dist/src/commands/vcs/index.d.ts +3 -0
- package/dist/src/commands/vcs/index.d.ts.map +1 -0
- package/dist/src/commands/vcs/index.js +58 -0
- package/dist/src/commands/vcs/index.js.map +1 -0
- package/dist/src/commands/vcs/propose.d.ts +23 -0
- package/dist/src/commands/vcs/propose.d.ts.map +1 -0
- package/dist/src/commands/vcs/propose.js +94 -0
- package/dist/src/commands/vcs/propose.js.map +1 -0
- package/dist/src/commands/vcs/review.d.ts +15 -0
- package/dist/src/commands/vcs/review.d.ts.map +1 -0
- package/dist/src/commands/vcs/review.js +35 -0
- package/dist/src/commands/vcs/review.js.map +1 -0
- package/dist/src/commands/vcs-enrich.d.ts +15 -0
- package/dist/src/commands/vcs-enrich.d.ts.map +1 -0
- package/dist/src/commands/vcs-enrich.js +28 -0
- package/dist/src/commands/vcs-enrich.js.map +1 -0
- package/dist/src/commands/vpn/index.d.ts +24 -0
- package/dist/src/commands/vpn/index.d.ts.map +1 -0
- package/dist/src/commands/vpn/index.js +543 -0
- package/dist/src/commands/vpn/index.js.map +1 -0
- package/dist/src/commands/vpn/tunnel.d.ts +11 -0
- package/dist/src/commands/vpn/tunnel.d.ts.map +1 -0
- package/dist/src/commands/vpn/tunnel.js +188 -0
- package/dist/src/commands/vpn/tunnel.js.map +1 -0
- package/dist/src/commands/workflow.d.ts +24 -0
- package/dist/src/commands/workflow.d.ts.map +1 -0
- package/dist/src/commands/workflow.js +577 -0
- package/dist/src/commands/workflow.js.map +1 -0
- package/dist/src/docs/assemble.d.ts +217 -0
- package/dist/src/docs/assemble.d.ts.map +1 -0
- package/dist/src/docs/assemble.js +739 -0
- package/dist/src/docs/assemble.js.map +1 -0
- package/dist/src/docs/cli-reference.d.ts +93 -0
- package/dist/src/docs/cli-reference.d.ts.map +1 -0
- package/dist/src/docs/cli-reference.js +256 -0
- package/dist/src/docs/cli-reference.js.map +1 -0
- package/dist/src/docs/discover.d.ts +60 -0
- package/dist/src/docs/discover.d.ts.map +1 -0
- package/dist/src/docs/discover.js +233 -0
- package/dist/src/docs/discover.js.map +1 -0
- package/dist/src/docs/portal.d.ts +79 -0
- package/dist/src/docs/portal.d.ts.map +1 -0
- package/dist/src/docs/portal.js +242 -0
- package/dist/src/docs/portal.js.map +1 -0
- package/dist/src/docs/registry-docs.d.ts +43 -0
- package/dist/src/docs/registry-docs.d.ts.map +1 -0
- package/dist/src/docs/registry-docs.js +138 -0
- package/dist/src/docs/registry-docs.js.map +1 -0
- package/dist/src/docs/schema.d.ts +48 -0
- package/dist/src/docs/schema.d.ts.map +1 -0
- package/dist/src/docs/schema.js +96 -0
- package/dist/src/docs/schema.js.map +1 -0
- package/dist/src/docs/serve.d.ts +27 -0
- package/dist/src/docs/serve.d.ts.map +1 -0
- package/dist/src/docs/serve.js +102 -0
- package/dist/src/docs/serve.js.map +1 -0
- package/dist/src/docs/start.d.ts +80 -0
- package/dist/src/docs/start.d.ts.map +1 -0
- package/dist/src/docs/start.js +313 -0
- package/dist/src/docs/start.js.map +1 -0
- package/dist/src/eval/agent-eval.d.mts +14 -0
- package/dist/src/eval/agent-eval.d.mts.map +1 -0
- package/dist/src/eval/agent-eval.mjs +273 -0
- package/dist/src/eval/agent-eval.mjs.map +1 -0
- package/dist/src/index.js +624 -7
- package/dist/src/index.js.map +7 -1
- package/dist/src/program.d.ts +26 -0
- package/dist/src/program.d.ts.map +1 -0
- package/dist/src/program.js +76 -0
- package/dist/src/program.js.map +1 -0
- package/dist/src/utils/auth-preflight.d.ts +159 -0
- package/dist/src/utils/auth-preflight.d.ts.map +1 -0
- package/dist/src/utils/auth-preflight.js +298 -0
- package/dist/src/utils/auth-preflight.js.map +1 -0
- package/dist/src/utils/aws-auth.d.ts +181 -0
- package/dist/src/utils/aws-auth.d.ts.map +1 -0
- package/dist/src/utils/aws-auth.js +527 -0
- package/dist/src/utils/aws-auth.js.map +1 -0
- package/dist/src/utils/bastion.d.ts +1 -1
- package/dist/src/utils/bastion.d.ts.map +1 -1
- package/dist/src/utils/bastion.js +29 -8
- package/dist/src/utils/bastion.js.map +1 -1
- package/dist/src/utils/build-info.d.ts +33 -0
- package/dist/src/utils/build-info.d.ts.map +1 -0
- package/dist/src/utils/build-info.js +102 -0
- package/dist/src/utils/build-info.js.map +1 -0
- package/dist/src/utils/capture-history.d.ts +62 -0
- package/dist/src/utils/capture-history.d.ts.map +1 -0
- package/dist/src/utils/capture-history.js +94 -0
- package/dist/src/utils/capture-history.js.map +1 -0
- package/dist/src/utils/deploy-preflight.d.ts +52 -0
- package/dist/src/utils/deploy-preflight.d.ts.map +1 -0
- package/dist/src/utils/deploy-preflight.js +183 -0
- package/dist/src/utils/deploy-preflight.js.map +1 -0
- package/dist/src/utils/errors.d.ts +75 -0
- package/dist/src/utils/errors.d.ts.map +1 -0
- package/dist/src/utils/errors.js +106 -0
- package/dist/src/utils/errors.js.map +1 -0
- package/dist/src/utils/first-party-contexts.d.ts +40 -0
- package/dist/src/utils/first-party-contexts.d.ts.map +1 -0
- package/dist/src/utils/first-party-contexts.js +53 -0
- package/dist/src/utils/first-party-contexts.js.map +1 -0
- package/dist/src/utils/index.d.ts +2 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +2 -0
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/kubeconfig.d.ts +62 -0
- package/dist/src/utils/kubeconfig.d.ts.map +1 -0
- package/dist/src/utils/kubeconfig.js +118 -0
- package/dist/src/utils/kubeconfig.js.map +1 -0
- package/dist/src/utils/log.d.ts +27 -1
- package/dist/src/utils/log.d.ts.map +1 -1
- package/dist/src/utils/log.js +59 -5
- package/dist/src/utils/log.js.map +1 -1
- package/dist/src/utils/pid.d.ts +47 -0
- package/dist/src/utils/pid.d.ts.map +1 -0
- package/dist/src/utils/pid.js +83 -0
- package/dist/src/utils/pid.js.map +1 -0
- package/dist/src/utils/pulumi-run.d.ts +23 -0
- package/dist/src/utils/pulumi-run.d.ts.map +1 -0
- package/dist/src/utils/pulumi-run.js +112 -0
- package/dist/src/utils/pulumi-run.js.map +1 -0
- package/dist/src/utils/pulumi.d.ts +15 -0
- package/dist/src/utils/pulumi.d.ts.map +1 -1
- package/dist/src/utils/pulumi.js +35 -0
- package/dist/src/utils/pulumi.js.map +1 -1
- package/dist/src/utils/reachability.d.ts +29 -0
- package/dist/src/utils/reachability.d.ts.map +1 -0
- package/dist/src/utils/reachability.js +81 -0
- package/dist/src/utils/reachability.js.map +1 -0
- package/dist/src/utils/recover-conversation.d.ts +154 -0
- package/dist/src/utils/recover-conversation.d.ts.map +1 -0
- package/dist/src/utils/recover-conversation.js +314 -0
- package/dist/src/utils/recover-conversation.js.map +1 -0
- package/dist/src/utils/registry-broker.d.ts +148 -0
- package/dist/src/utils/registry-broker.d.ts.map +1 -0
- package/dist/src/utils/registry-broker.js +180 -0
- package/dist/src/utils/registry-broker.js.map +1 -0
- package/dist/src/utils/socks-forward.d.ts +40 -0
- package/dist/src/utils/socks-forward.d.ts.map +1 -0
- package/dist/src/utils/socks-forward.js +97 -0
- package/dist/src/utils/socks-forward.js.map +1 -0
- package/dist/src/utils/stack-flag.d.ts +23 -0
- package/dist/src/utils/stack-flag.d.ts.map +1 -0
- package/dist/src/utils/stack-flag.js +41 -0
- package/dist/src/utils/stack-flag.js.map +1 -0
- package/dist/src/utils/tailscale-targets.d.ts +52 -0
- package/dist/src/utils/tailscale-targets.d.ts.map +1 -0
- package/dist/src/utils/tailscale-targets.js +93 -0
- package/dist/src/utils/tailscale-targets.js.map +1 -0
- package/dist/src/utils/tailscale.d.ts +277 -0
- package/dist/src/utils/tailscale.d.ts.map +1 -0
- package/dist/src/utils/tailscale.js +1007 -0
- package/dist/src/utils/tailscale.js.map +1 -0
- package/dist/src/utils/temporal-auth.d.ts +43 -0
- package/dist/src/utils/temporal-auth.d.ts.map +1 -0
- package/dist/src/utils/temporal-auth.js +176 -0
- package/dist/src/utils/temporal-auth.js.map +1 -0
- package/dist/src/utils/temporal-codec.d.ts +101 -0
- package/dist/src/utils/temporal-codec.d.ts.map +1 -0
- package/dist/src/utils/temporal-codec.js +319 -0
- package/dist/src/utils/temporal-codec.js.map +1 -0
- package/dist/src/utils/tunnel-ownership.d.ts +130 -0
- package/dist/src/utils/tunnel-ownership.d.ts.map +1 -0
- package/dist/src/utils/tunnel-ownership.js +274 -0
- package/dist/src/utils/tunnel-ownership.js.map +1 -0
- package/dist/src/utils/vpn-join.d.ts +32 -0
- package/dist/src/utils/vpn-join.d.ts.map +1 -0
- package/dist/src/utils/vpn-join.js +62 -0
- package/dist/src/utils/vpn-join.js.map +1 -0
- package/dist/src/utils/vpn.d.ts +62 -0
- package/dist/src/utils/vpn.d.ts.map +1 -0
- package/dist/src/utils/vpn.js +183 -0
- package/dist/src/utils/vpn.js.map +1 -0
- package/dist/src/utils/workflow-fingerprint.d.ts +49 -0
- package/dist/src/utils/workflow-fingerprint.d.ts.map +1 -0
- package/dist/src/utils/workflow-fingerprint.js +135 -0
- package/dist/src/utils/workflow-fingerprint.js.map +1 -0
- package/dist/src/utils/worktree-identity.d.ts +86 -0
- package/dist/src/utils/worktree-identity.d.ts.map +1 -0
- package/dist/src/utils/worktree-identity.js +164 -0
- package/dist/src/utils/worktree-identity.js.map +1 -0
- package/fragments/agents/AGENTS.md.hbs +92 -0
- package/fragments/agents/CLAUDE.md.hbs +8 -0
- package/fragments/base/Pulumi.dev.yaml.hbs +10 -0
- package/fragments/base/Pulumi.yaml.hbs +9 -0
- package/fragments/base/index.ts.hbs +107 -0
- package/fragments/base/package.json.hbs +22 -0
- package/{templates/api-web-db/api → fragments/base}/tsconfig.json +3 -4
- package/fragments/bucket/api/src/storage.ts.hbs +81 -0
- package/fragments/database/api/src/db.ts.hbs +23 -0
- package/fragments/database/prisma/schema.prisma.hbs +18 -0
- package/{templates/api-web-db → fragments/service}/api/.dockerignore +2 -0
- package/fragments/service/api/package.json.hbs +40 -0
- package/fragments/service/api/src/index.ts.hbs +58 -0
- package/{templates/api-web-db → fragments/service/api}/tsconfig.json +5 -3
- package/fragments/temporal/worker/.dockerignore +4 -0
- package/fragments/temporal/worker/Dockerfile +15 -0
- package/{templates/temporal-api-worker → fragments/temporal}/worker/package.json.hbs +3 -2
- package/fragments/temporal/worker/src/activities.ts.hbs +14 -0
- package/fragments/temporal/worker/src/worker.ts.hbs +27 -0
- package/fragments/temporal/worker/src/workflows.ts.hbs +24 -0
- package/fragments/temporal/worker/tsconfig.json +13 -0
- package/package.json +35 -21
- package/skills/core/SKILL.md +365 -0
- package/skills/pull-remote-agent-context/SKILL.md +194 -0
- package/stack/docker-compose.hub.yml +134 -0
- package/stack/docker-compose.yml +447 -0
- package/stack/hub/Dockerfile.api +18 -0
- package/stack/hub/Dockerfile.auth +10 -0
- package/stack/hub/Dockerfile.ui +10 -0
- package/stack/init/01-databases.sql +12 -0
- package/stack/observability/blackbox.yml +20 -0
- package/stack/observability/otel-collector.yaml +73 -0
- package/stack/observability/prometheus.yml +36 -0
- package/stack/observability/tempo.yaml +25 -0
- package/stack/temporal/local.yaml +44 -0
- package/templates/api-auth/AGENTS.md.hbs +16 -0
- package/templates/api-auth/Pulumi.dev.yaml.hbs +8 -0
- package/templates/api-auth/Pulumi.yaml.hbs +8 -0
- package/templates/api-auth/README.md.hbs +67 -0
- package/templates/api-auth/api/package.json.hbs +28 -0
- package/templates/api-auth/api/src/index.ts.hbs +96 -0
- package/templates/api-auth/api/src/schema.ts.hbs +35 -0
- package/templates/api-auth/api/src/seed-authz.ts.hbs +48 -0
- package/templates/api-auth/api/src/spicedb-http-provider.ts.hbs +89 -0
- package/templates/api-auth/index.ts.hbs +65 -0
- package/templates/api-auth/package.json.hbs +20 -0
- package/templates/api-auth/skills/develop/SKILL.md.hbs +32 -0
- package/templates/api-role-gating/AGENTS.md.hbs +20 -0
- package/templates/api-role-gating/Pulumi.dev.yaml.hbs +8 -0
- package/templates/api-role-gating/Pulumi.yaml.hbs +8 -0
- package/templates/api-role-gating/README.md.hbs +64 -0
- package/templates/api-role-gating/api/Dockerfile +17 -0
- package/templates/api-role-gating/api/package.json.hbs +28 -0
- package/templates/api-role-gating/api/src/authn.ts.hbs +29 -0
- package/templates/api-role-gating/api/src/authz.ts.hbs +12 -0
- package/templates/api-role-gating/api/src/main.ts.hbs +58 -0
- package/templates/api-role-gating/api/src/schema.ts.hbs +22 -0
- package/templates/api-role-gating/api/tsconfig.json +13 -0
- package/templates/api-role-gating/index.ts.hbs +107 -0
- package/templates/api-role-gating/package.json.hbs +21 -0
- package/templates/api-role-gating/skills/develop/SKILL.md.hbs +60 -0
- package/templates/api-role-gating/tsconfig.json +10 -0
- package/templates/apps-repo/README.md.hbs +24 -0
- package/templates/apps-repo/gitignore +41 -0
- package/templates/apps-repo/npmrc.hbs +7 -0
- package/templates/apps-repo/package.json.hbs +15 -0
- package/templates/apps-repo/pnpm-workspace.yaml +3 -0
- package/templates/apps-repo/tsconfig.json +18 -0
- package/templates/external-service/AGENTS.md.hbs +20 -0
- package/templates/external-service/Pulumi.dev.yaml.hbs +8 -0
- package/templates/external-service/Pulumi.yaml.hbs +8 -0
- package/templates/external-service/README.md.hbs +56 -0
- package/templates/external-service/api/Dockerfile +15 -0
- package/templates/external-service/api/package.json.hbs +25 -0
- package/templates/external-service/api/src/index.ts.hbs +81 -0
- package/templates/external-service/index.ts.hbs +82 -0
- package/templates/external-service/mocks/vendorpay/package.json.hbs +9 -0
- package/templates/external-service/mocks/vendorpay/server.mjs.hbs +61 -0
- package/templates/external-service/package.json.hbs +34 -0
- package/templates/external-service/skills/develop/SKILL.md.hbs +55 -0
- package/templates/external-service/tsconfig.json +10 -0
- package/templates/platform-repo/AGENTS.md.hbs +18 -0
- package/templates/platform-repo/README.md.hbs +38 -0
- package/templates/platform-repo/core/Pulumi.yaml.hbs +12 -0
- package/templates/platform-repo/core/Pulumi.{{tenant}}-{{env}}.yaml.hbs +57 -0
- package/templates/platform-repo/core/index.ts +62 -0
- package/templates/platform-repo/core/package.json.hbs +22 -0
- package/templates/platform-repo/core/tsconfig.json +8 -0
- package/templates/platform-repo/package.json.hbs +15 -0
- package/templates/platform-repo/platform/Pulumi.yaml.hbs +12 -0
- package/templates/platform-repo/platform/Pulumi.{{tenant}}-{{env}}.yaml.hbs +59 -0
- package/templates/platform-repo/platform/index.ts +95 -0
- package/templates/platform-repo/platform/package.json.hbs +26 -0
- package/templates/platform-repo/platform/tsconfig.json +8 -0
- package/templates/platform-repo/pnpm-workspace.yaml +3 -0
- package/templates/workflow/AGENTS.md.hbs +15 -0
- package/templates/workflow/Pulumi.dev.yaml.hbs +8 -0
- package/templates/workflow/Pulumi.yaml.hbs +8 -0
- package/templates/workflow/README.md.hbs +45 -0
- package/templates/workflow/api/.dockerignore +4 -0
- package/templates/workflow/api/Dockerfile +15 -0
- package/templates/{temporal-api-worker → workflow}/api/package.json.hbs +8 -6
- package/templates/workflow/api/src/index.ts.hbs +130 -0
- package/templates/workflow/api/tsconfig.json +14 -0
- package/templates/workflow/index.ts.hbs +67 -0
- package/templates/workflow/package.json.hbs +20 -0
- package/templates/workflow/skills/develop/SKILL.md.hbs +32 -0
- package/templates/workflow/tsconfig.json +10 -0
- package/templates/workflow/worker/.dockerignore +4 -0
- package/templates/workflow/worker/Dockerfile +13 -0
- package/templates/workflow/worker/package.json.hbs +25 -0
- package/templates/workflow/worker/src/worker.ts.hbs +24 -0
- package/templates/workflow/worker/tsconfig.json +14 -0
- package/dist/src/commands/devbox.d.ts +0 -22
- package/dist/src/commands/devbox.d.ts.map +0 -1
- package/dist/src/commands/devbox.js +0 -463
- package/dist/src/commands/devbox.js.map +0 -1
- package/templates/api-web-db/api/Dockerfile +0 -16
- package/templates/api-web-db/api/package.json.hbs +0 -21
- package/templates/api-web-db/api/src/index.ts.hbs +0 -123
- package/templates/api-web-db/package.json.hbs +0 -27
- package/templates/api-web-db/sst.config.ts.hbs +0 -151
- package/templates/api-web-db/web/.dockerignore +0 -3
- package/templates/api-web-db/web/Dockerfile +0 -17
- package/templates/api-web-db/web/app/lib/db.server.ts +0 -36
- package/templates/api-web-db/web/app/root.tsx +0 -29
- package/templates/api-web-db/web/app/routes/home.tsx.hbs +0 -114
- package/templates/api-web-db/web/app/routes.ts +0 -3
- package/templates/api-web-db/web/package.json.hbs +0 -30
- package/templates/api-web-db/web/prisma/schema.prisma +0 -25
- package/templates/api-web-db/web/prisma.config.ts +0 -18
- package/templates/api-web-db/web/react-router.config.ts +0 -5
- package/templates/api-web-db/web/tsconfig.json +0 -19
- package/templates/api-web-db/web/vite.config.ts +0 -9
- package/templates/temporal-api-worker/README.md.hbs +0 -133
- package/templates/temporal-api-worker/api/src/index.ts.hbs +0 -145
- package/templates/temporal-api-worker/package.json.hbs +0 -29
- package/templates/temporal-api-worker/sst.config.ts.hbs +0 -161
- package/templates/temporal-api-worker/worker/Dockerfile +0 -11
- package/templates/temporal-api-worker/worker/src/bundle-workflows.ts +0 -38
- package/templates/temporal-api-worker/worker/src/worker.ts.hbs +0 -93
- /package/templates/{temporal-api-worker → api-auth}/api/.dockerignore +0 -0
- /package/templates/{temporal-api-worker → api-auth}/api/Dockerfile +0 -0
- /package/templates/{temporal-api-worker → api-auth}/api/tsconfig.json +0 -0
- /package/templates/{temporal-api-worker → api-auth}/tsconfig.json +0 -0
- /package/templates/{temporal-api-worker/worker → api-role-gating/api}/.dockerignore +0 -0
- /package/templates/{temporal-api-worker/worker → external-service/api}/tsconfig.json +0 -0
- /package/templates/{temporal-api-worker → workflow}/api/src/encryption-codec.ts +0 -0
- /package/templates/{temporal-api-worker → workflow}/worker/src/activities.ts.hbs +0 -0
- /package/templates/{temporal-api-worker → workflow}/worker/src/encryption-codec.ts +0 -0
- /package/templates/{temporal-api-worker → workflow}/worker/src/workflows.ts.hbs +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/local/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `mesh dev --externals` (alias `--mock`) — external-service realizations
|
|
3
|
+
* for a local dev session (MESH-1885, design C4).
|
|
4
|
+
*
|
|
5
|
+
* Apps DECLARE how each external dependency is realized locally in the root
|
|
6
|
+
* package.json under `mesh.externals` (legacy key `mesh.mocks` still read).
|
|
7
|
+
* Every declaration runs in exactly one of three MODES:
|
|
8
|
+
*
|
|
9
|
+
* mock — the service is MIMICKED: no real instance exists locally or
|
|
10
|
+
* remotely. Realized from an OpenAPI spec (`openapi` → Prism
|
|
11
|
+
* mock server) or a hand-written mock process (`src`).
|
|
12
|
+
* local — a LOCAL VERSION of the real service runs on this machine,
|
|
13
|
+
* e.g. a vendor-shaped database replica. Realized from a docker
|
|
14
|
+
* compose file (`compose` + published `port`).
|
|
15
|
+
* remote — the session connects to the ACTUAL external service: either
|
|
16
|
+
* the vendor's real endpoint with inline `credentials` (e.g. a
|
|
17
|
+
* sandbox), or the external service as configured in the app's
|
|
18
|
+
* tenant environment (`remote.env`, e.g. dev — credentials are
|
|
19
|
+
* pulled from that environment's secret).
|
|
20
|
+
*
|
|
21
|
+
* "mesh": {
|
|
22
|
+
* "externals": {
|
|
23
|
+
* "plaid-db": { // ── local (default) ──
|
|
24
|
+
* "mode": "local",
|
|
25
|
+
* "compose": "libs/plaid-db/docker/docker-compose.yml",
|
|
26
|
+
* "port": 1433, // REQUIRED: the published port
|
|
27
|
+
* "probe": "tcp", // non-HTTP uptime probe
|
|
28
|
+
* "external": "plaid-db",
|
|
29
|
+
* "credentials": { // {{host}}/{{port}} → localhost:1433
|
|
30
|
+
* "host": "{{host}}", "port": "{{port}}",
|
|
31
|
+
* "name": "Plaid_Clean", "username": "sa",
|
|
32
|
+
* "password": "{{env:PLAID_DB_PASSWORD}}"
|
|
33
|
+
* },
|
|
34
|
+
* "remote": { "env": "dev" } // `--externals plaid-db=remote`
|
|
35
|
+
* }, // pulls the dev-configured secret
|
|
36
|
+
* "plaid": { // ── remote ──
|
|
37
|
+
* "mode": "remote",
|
|
38
|
+
* "external": "plaid", // the vendor's REAL sandbox
|
|
39
|
+
* "displayName": "Plaid", // the Hub shows the real name…
|
|
40
|
+
* "type": "api", // …and the integration type
|
|
41
|
+
* "docs": "https://plaid.com/docs/api/", // vendor reference docs
|
|
42
|
+
* "credentials": {
|
|
43
|
+
* "endpoint": "https://sandbox.plaid.com",
|
|
44
|
+
* "client_id": "{{env:PLAID_CLIENT_ID}}",
|
|
45
|
+
* "secret": "{{env:PLAID_SECRET}}"
|
|
46
|
+
* }
|
|
47
|
+
* },
|
|
48
|
+
* "vendorpay": { // ── mock ──
|
|
49
|
+
* "mode": "mock",
|
|
50
|
+
* "openapi": "api/docs/spec/openapi.json", // spec → Prism emulation
|
|
51
|
+
* "external": "vendorpay",
|
|
52
|
+
* "credentials": { "baseUrl": "{{url}}", "apiKey": "mock" }
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* }
|
|
56
|
+
*
|
|
57
|
+
* `mode` picks the DEFAULT; a declaration may carry more than one
|
|
58
|
+
* realization (e.g. compose + remote.env) and the CLI overrides per
|
|
59
|
+
* external at run time: `mesh dev --externals plaid-db=remote,plaid`.
|
|
60
|
+
* Declarations without `mode` infer it from their fields (compose → local,
|
|
61
|
+
* openapi/src → mock, sandbox/credentials-only → remote), so pre-mode
|
|
62
|
+
* declarations keep working (`sandbox: true` is a deprecated alias for
|
|
63
|
+
* mode remote).
|
|
64
|
+
*
|
|
65
|
+
* All credential values support `{{env:VAR}}` interpolation from the
|
|
66
|
+
* developer's environment, so real secrets (sandbox keys, DB passwords)
|
|
67
|
+
* never land in package.json.
|
|
68
|
+
*
|
|
69
|
+
* Realization: mock externals join the SAME orchestration as services named
|
|
70
|
+
* mock-{name} (ports, env files, tmux windows, Loki log pipeline); local
|
|
71
|
+
* externals come up via `docker compose up -d --wait` before the app's
|
|
72
|
+
* services and are torn down on `mesh dev --kill`; remote externals spawn
|
|
73
|
+
* nothing. In every mode the ExternalService credential secret is seeded at
|
|
74
|
+
* mesh/{tenant}/{env}/external/{name} so the app's resolveCredentials()
|
|
75
|
+
* path runs UNCHANGED, the vendor is registered in the local Hub's
|
|
76
|
+
* external-services view, and a blackbox uptime probe watches the
|
|
77
|
+
* realization — remote endpoints included.
|
|
78
|
+
*/
|
|
79
|
+
export interface LocalMockDecl {
|
|
80
|
+
/** Default mode for this external: "mock" (emulate via openapi/src),
|
|
81
|
+
* "local" (docker compose local version), "remote" (the actual service).
|
|
82
|
+
* Inferred from the realization fields when omitted; overridable per run
|
|
83
|
+
* with `mesh dev --externals name=mode`. */
|
|
84
|
+
mode?: ExternalMode;
|
|
85
|
+
/** Mock mode: directory (relative to app root) with a package.json `dev`
|
|
86
|
+
* script — a hand-written mock process. */
|
|
87
|
+
src?: string;
|
|
88
|
+
/** Local mode: docker compose file (relative to app root) running a local
|
|
89
|
+
* version of the external service — e.g. a vendor-shaped database
|
|
90
|
+
* replica. `mesh dev` runs `docker compose up -d --wait` before the
|
|
91
|
+
* app's services and `docker compose down` on `--kill`. Requires `port`. */
|
|
92
|
+
compose?: string;
|
|
93
|
+
/** Mock mode: OpenAPI spec file (relative to app root); the CLI emulates
|
|
94
|
+
* the service with a Prism mock server (`npx @stoplight/prism-cli mock`)
|
|
95
|
+
* as mock-{name}. */
|
|
96
|
+
openapi?: string;
|
|
97
|
+
/** @deprecated alias for `mode: "remote"` (with inline credentials). */
|
|
98
|
+
sandbox?: boolean;
|
|
99
|
+
/** Remote-mode credential source. When the external runs in remote mode,
|
|
100
|
+
* its credentials come from (first match): `remote.credentials` (inline,
|
|
101
|
+
* env-interpolated), the top-level `credentials` if this declaration has
|
|
102
|
+
* no local/mock realization (a pure-remote declaration), or the external
|
|
103
|
+
* service configured in the app's tenant environment `remote.env`
|
|
104
|
+
* (default "dev") — secret mesh/{tenant}/{env}/external/{name}, read
|
|
105
|
+
* with the developer's ambient AWS credentials. `remote.profile` names
|
|
106
|
+
* the AWS profile for that pull when the shell carries no AWS identity
|
|
107
|
+
* (no AWS_ACCESS_KEY_ID / AWS_PROFILE); the MESH_AWS_PROFILE env var
|
|
108
|
+
* overrides it — the same convention repo pull scripts use. */
|
|
109
|
+
remote?: {
|
|
110
|
+
env?: string;
|
|
111
|
+
credentials?: Record<string, string>;
|
|
112
|
+
profile?: string;
|
|
113
|
+
};
|
|
114
|
+
/** Human-facing integration name shown in the Hub (e.g. "Plaid",
|
|
115
|
+
* "Unit21"). @default the external name title-cased ("plaid-db" →
|
|
116
|
+
* "Plaid Db"). */
|
|
117
|
+
displayName?: string;
|
|
118
|
+
/** Vendor reference documentation for the integration, linked from the
|
|
119
|
+
* Hub — a URL string or `{ url, provider }`.
|
|
120
|
+
* @example "https://plaid.com/docs/api/" */
|
|
121
|
+
docs?: string | {
|
|
122
|
+
url: string;
|
|
123
|
+
provider?: string;
|
|
124
|
+
};
|
|
125
|
+
/** Fixed port; omitted = auto-allocated after the app's services.
|
|
126
|
+
* REQUIRED in local (compose) mode — the compose file's published port. */
|
|
127
|
+
port?: number;
|
|
128
|
+
/** Launch command (default: ["pnpm", "dev"]; openapi mocks synthesize a
|
|
129
|
+
* Prism command) */
|
|
130
|
+
command?: string[];
|
|
131
|
+
/** Extra env for the mock process */
|
|
132
|
+
env?: Record<string, string>;
|
|
133
|
+
/** ExternalService name this declaration realizes */
|
|
134
|
+
external?: string;
|
|
135
|
+
/** Credential JSON seeded into the external secret (the local/mock
|
|
136
|
+
* realization's template; also the remote source for pure-remote
|
|
137
|
+
* declarations). Tokens: "{{url}}" → the stand-in's URL, "{{host}}"/
|
|
138
|
+
* "{{port}}" → its host/port, and "{{env:VAR}}" → the developer's
|
|
139
|
+
* environment (all modes). */
|
|
140
|
+
credentials?: Record<string, string>;
|
|
141
|
+
/** Integration type shown in the Hub — api, database, object_storage,
|
|
142
|
+
* sftp, banking_core, … (@default "other"). Display only; derived
|
|
143
|
+
* reachability probes key off the credential fields themselves (a
|
|
144
|
+
* `bucket` credential probes TCP to the bucket endpoint regardless of
|
|
145
|
+
* the declared type). */
|
|
146
|
+
type?: string;
|
|
147
|
+
/** Health endpoint path probed by the platform's blackbox exporter
|
|
148
|
+
* (uptime in the Hub). @default "/health" for local/mock realizations;
|
|
149
|
+
* remote endpoints default to probing the endpoint root ("") since
|
|
150
|
+
* vendors rarely expose /health. */
|
|
151
|
+
healthPath?: string;
|
|
152
|
+
/** Blackbox probe module. "http" (default) GETs the health URL and
|
|
153
|
+
* expects 2xx; "tcp" only checks the port accepts connections — REQUIRED
|
|
154
|
+
* for non-HTTP externals (databases, SFTP, …) whose uptime would
|
|
155
|
+
* otherwise always read down. */
|
|
156
|
+
probe?: "http" | "tcp";
|
|
157
|
+
}
|
|
158
|
+
/** The three ways an external service exists in a local dev session. */
|
|
159
|
+
export type ExternalMode = "mock" | "local" | "remote";
|
|
160
|
+
/**
|
|
161
|
+
* Resolve + validate an external's mode: explicit `mode` (or the one
|
|
162
|
+
* inferred from the realization fields), checked against the fields that
|
|
163
|
+
* mode needs. Pre-mode declarations infer: compose → local, openapi/src →
|
|
164
|
+
* mock, sandbox/credentials-only → remote.
|
|
165
|
+
*/
|
|
166
|
+
export declare function externalMode(name: string, decl: LocalMockDecl): ExternalMode;
|
|
167
|
+
/** A parsed `--externals` selection: the externals named, and the per-run
|
|
168
|
+
* mode overrides typed alongside them (`plaid-db=remote`). */
|
|
169
|
+
export interface ExternalsSelection {
|
|
170
|
+
names: string[];
|
|
171
|
+
overrides: Map<string, ExternalMode>;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Parse a `--externals` value — a comma-separated list of `name` or
|
|
175
|
+
* `name=mode` entries. An explicit mode overrides that declaration's
|
|
176
|
+
* default FOR THIS RUN; a bare name keeps the declared default.
|
|
177
|
+
*
|
|
178
|
+
* Names are returned in the order typed, de-duplicated (the last mode
|
|
179
|
+
* given for a name wins, so `--externals plaid,plaid=remote` is remote).
|
|
180
|
+
*/
|
|
181
|
+
export declare function parseExternalsSelection(input: string): ExternalsSelection;
|
|
182
|
+
/**
|
|
183
|
+
* The inline credential template a remote-mode run should use, if any:
|
|
184
|
+
* `remote.credentials` always wins; top-level `credentials` count only when
|
|
185
|
+
* the declaration has no local/mock realization (otherwise they are that
|
|
186
|
+
* realization's template, full of {{host}}/{{port}} tokens that only mean
|
|
187
|
+
* something against a local endpoint).
|
|
188
|
+
*/
|
|
189
|
+
export declare function remoteInlineCredentials(decl: LocalMockDecl): Record<string, string> | undefined;
|
|
190
|
+
/** Whether this declaration runs as a mock-{name} service in the dev
|
|
191
|
+
* orchestration (mock mode) vs outside it (local compose / remote). */
|
|
192
|
+
export declare function isServiceMode(name: string, decl: LocalMockDecl): boolean;
|
|
193
|
+
/** Endpoint tokens available to credential interpolation. */
|
|
194
|
+
export interface MockEndpoint {
|
|
195
|
+
url: string;
|
|
196
|
+
host: string;
|
|
197
|
+
port: number;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Interpolate one credential value: {{url}}/{{host}}/{{port}} from the
|
|
201
|
+
* stand-in's endpoint, {{env:VAR}} from the developer's environment
|
|
202
|
+
* (missing env vars are a hard error — a half-seeded secret is worse).
|
|
203
|
+
*/
|
|
204
|
+
export declare function interpolateCredentialValue(raw: string, endpoint: MockEndpoint | undefined, env?: NodeJS.ProcessEnv): string;
|
|
205
|
+
/** The Prism mock command for an openapi-mode declaration. `$PORT` expands
|
|
206
|
+
* in the service's launch shell (tmux and docker runners both source the
|
|
207
|
+
* env file), so port reallocation keeps working. */
|
|
208
|
+
export declare function openapiMockCommand(decl: LocalMockDecl): string[];
|
|
209
|
+
/** Compose-mode project name — pinned so `--kill` can tear down exactly
|
|
210
|
+
* what `up` created, regardless of the compose file's own `name:`. */
|
|
211
|
+
export declare function composeProjectName(sessionName: string, mockName: string): string;
|
|
212
|
+
/** A compose-mode external recorded in session state for teardown. */
|
|
213
|
+
export interface ComposeExternalRef {
|
|
214
|
+
name: string;
|
|
215
|
+
composeFile: string;
|
|
216
|
+
project: string;
|
|
217
|
+
}
|
|
218
|
+
/** What an existing realization of a compose external means for this run.
|
|
219
|
+
* - `up` → nothing foreign in the way (or the realization is OURS):
|
|
220
|
+
* normal idempotent `up`, ref recorded for `--kill`.
|
|
221
|
+
* - `adopt-served` → ANOTHER realization of THIS compose file already serves
|
|
222
|
+
* the declared port.
|
|
223
|
+
* - `adopt-stopped` → a stopped container from another compose project holds
|
|
224
|
+
* a `container_name` this file pins.
|
|
225
|
+
* - `conflict` → the port is served by something this compose file does
|
|
226
|
+
* not define (a native database, an unrelated container).
|
|
227
|
+
* Never adopted: the app's credentials would be seeded
|
|
228
|
+
* against the wrong service. */
|
|
229
|
+
export type ComposeExternalPlan = {
|
|
230
|
+
action: "up";
|
|
231
|
+
} | {
|
|
232
|
+
action: "adopt-served";
|
|
233
|
+
container: string;
|
|
234
|
+
} | {
|
|
235
|
+
action: "adopt-stopped";
|
|
236
|
+
container: string;
|
|
237
|
+
} | {
|
|
238
|
+
action: "conflict";
|
|
239
|
+
container?: string;
|
|
240
|
+
};
|
|
241
|
+
/** The docker/network lookups `planComposeExternal` needs, injectable so the
|
|
242
|
+
* branch table is unit-testable without a docker daemon. */
|
|
243
|
+
export interface ComposeExternalProbes {
|
|
244
|
+
/** Is a container of OUR compose project already running for this file? */
|
|
245
|
+
ownsRunning(composeFile: string, project: string): boolean;
|
|
246
|
+
/** Does anything accept TCP on the declared port? */
|
|
247
|
+
portServed(port: number): Promise<boolean>;
|
|
248
|
+
/** A pinned `container_name` held by a DIFFERENT compose project. */
|
|
249
|
+
foreignPinned(composeFile: string, project: string): string | undefined;
|
|
250
|
+
/** Who publishes `port`, and is it a service THIS compose file defines?
|
|
251
|
+
* Undefined when nothing in docker publishes it (a native process, or no
|
|
252
|
+
* docker at all) — which is itself disqualifying for adoption. */
|
|
253
|
+
portPublisher(composeFile: string, port: number): {
|
|
254
|
+
container: string;
|
|
255
|
+
definedByFile: boolean;
|
|
256
|
+
} | undefined;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Decide how to realize a compose external, given what already exists.
|
|
260
|
+
*
|
|
261
|
+
* OWNERSHIP FIRST: a port probe can't tell WHO serves the port, and the
|
|
262
|
+
* ordinary flow re-runs `mesh dev` against a session whose compose externals
|
|
263
|
+
* are deliberately left running. Adopting there would drop the ref from
|
|
264
|
+
* session state and permanently orphan the checkout's own container, so our
|
|
265
|
+
* own realization takes the normal `up` path (idempotent, ref re-recorded)
|
|
266
|
+
* and only a foreign one is adopted.
|
|
267
|
+
*
|
|
268
|
+
* IDENTITY SECOND: a foreign publisher is only adopted when it is a service
|
|
269
|
+
* THIS compose file defines. Well-known ports (1433/5432/22) are exactly
|
|
270
|
+
* where a native install or an unrelated container turns up, and adopting one
|
|
271
|
+
* silently seeds the app's credentials against the wrong database.
|
|
272
|
+
*/
|
|
273
|
+
export declare function planComposeExternal(composeFile: string, project: string, port: number, probes: ComposeExternalProbes): Promise<ComposeExternalPlan>;
|
|
274
|
+
/**
|
|
275
|
+
* Bring a compose-mode external up (idempotent; waits for healthchecks —
|
|
276
|
+
* vendor DBs restoring seed data can take a while, hence the timeout).
|
|
277
|
+
*
|
|
278
|
+
* ADOPTION: the same external is often realized by more than one checkout —
|
|
279
|
+
* e.g. a vendor-DB compose ported from a legacy repo pins `container_name`
|
|
280
|
+
* and a host port, so whichever checkout created it first blocks every other
|
|
281
|
+
* `docker compose up` (name + port conflicts). An external service is by
|
|
282
|
+
* definition outside the app, so if ANOTHER checkout already serves its
|
|
283
|
+
* published port — or left a stopped container holding the pinned name —
|
|
284
|
+
* this ADOPTS that realization instead of failing: skip/`docker start`, wait
|
|
285
|
+
* for the port, and return undefined so `--kill` never tears down what
|
|
286
|
+
* another checkout owns. Our OWN realization is never adopted (see
|
|
287
|
+
* `planComposeExternal`) — it stays recorded so `--kill` still cleans it up,
|
|
288
|
+
* and a publisher this compose file doesn't define is never adopted either
|
|
289
|
+
* (it would seed the app's credentials against the wrong service).
|
|
290
|
+
*/
|
|
291
|
+
export declare function composeExternalUp(appRoot: string, sessionName: string, name: string, decl: LocalMockDecl, probes?: ComposeExternalProbes): Promise<ComposeExternalRef | undefined>;
|
|
292
|
+
/** Tear down compose-mode externals recorded in session state. Volumes are
|
|
293
|
+
* kept (vendor DB data survives sessions, like the cloud external it
|
|
294
|
+
* stands in for); best-effort per project. */
|
|
295
|
+
export declare function composeExternalsDown(refs: ComposeExternalRef[] | undefined): void;
|
|
296
|
+
/** Read the app's declared externals (root package.json → mesh.externals;
|
|
297
|
+
* legacy key mesh.mocks still read, externals wins on name collision). */
|
|
298
|
+
export declare function readLocalMocks(appRoot: string): Record<string, LocalMockDecl>;
|
|
299
|
+
export declare function externalSecretPath(tenant: string, external: string): string;
|
|
300
|
+
/**
|
|
301
|
+
* Pull an external service's credentials as configured in the app's tenant
|
|
302
|
+
* environment (the CLOUD platform, not the local fabric) — secret
|
|
303
|
+
* mesh/{tenant}/{env}/external/{name}, read with the developer's ambient
|
|
304
|
+
* AWS credentials (AWS_PROFILE / SSO session for that tenant's account).
|
|
305
|
+
* When the shell carries no AWS identity at all, `profile` (from the
|
|
306
|
+
* declaration; MESH_AWS_PROFILE overrides) names the profile to use — the
|
|
307
|
+
* same convention repo pull scripts follow.
|
|
308
|
+
*/
|
|
309
|
+
export declare function fetchRemoteExternalCredentials(tenant: string, env: string, external: string, profile?: string): Promise<Record<string, string>>;
|
|
310
|
+
/** The blackbox probe target for a realization, by mode: local/mock
|
|
311
|
+
* stand-ins are probed on the host (the prober runs inside the stack →
|
|
312
|
+
* host.docker.internal); remote externals are probed at their REAL
|
|
313
|
+
* endpoint, so the Hub shows actual vendor reachability. Every integration
|
|
314
|
+
* gets AT LEAST a reachability check when its credentials expose a target:
|
|
315
|
+
* an HTTP endpoint, a host(:port), or an S3 bucket (probed via TCP to the
|
|
316
|
+
* bucket endpoint — no SDK/credentials needed, the same technique CSP's
|
|
317
|
+
* network lib used). Undefined = nothing probeable in the credentials.
|
|
318
|
+
*
|
|
319
|
+
* Target and module come from ONE decision here so they can't drift: a
|
|
320
|
+
* misrouted probe just reports probe_success 0, indistinguishable from a
|
|
321
|
+
* genuinely down service. `tcp` yields host:port with no scheme/path and
|
|
322
|
+
* routes the scrape to blackbox's tcp_connect (the scrape config's default
|
|
323
|
+
* stays http_2xx); `http` GETs the target and expects 2xx. */
|
|
324
|
+
export declare function resolveProbeTarget(mode: ExternalMode, decl: LocalMockDecl, endpoint: MockEndpoint | undefined, creds: Record<string, string>): {
|
|
325
|
+
target: string;
|
|
326
|
+
module?: "tcp_connect";
|
|
327
|
+
} | undefined;
|
|
328
|
+
/** Hub display name: explicit `displayName`, else the external name
|
|
329
|
+
* title-cased on word boundaries ("plaid-db" → "Plaid Db"). */
|
|
330
|
+
export declare function externalDisplayName(name: string, decl: LocalMockDecl): string;
|
|
331
|
+
/** Normalize the decl's `docs` (string URL or {url, provider}) for the meta. */
|
|
332
|
+
export declare function externalDocs(decl: LocalMockDecl): {
|
|
333
|
+
url: string;
|
|
334
|
+
provider?: string;
|
|
335
|
+
} | undefined;
|
|
336
|
+
/** Prometheus file_sd target file for one external's uptime probe. One
|
|
337
|
+
* file per (tenant, app, external) so a session's probes can be removed on
|
|
338
|
+
* `--kill` without touching another app's. */
|
|
339
|
+
export declare function localProbeFile(tenant: string, app: string, external: string): string;
|
|
340
|
+
/** Drop probe target files (best effort). Called on `mesh dev --kill` so
|
|
341
|
+
* Prometheus stops scraping stand-ins that no longer exist — otherwise the
|
|
342
|
+
* Hub shows an integration down for a session that isn't running. */
|
|
343
|
+
export declare function localProbesRemove(files: string[] | undefined): void;
|
|
344
|
+
/**
|
|
345
|
+
* Wire a realization into the platform: seed the external-service
|
|
346
|
+
* credential secret and register the vendor in the local Hub's
|
|
347
|
+
* external-services view — the same shapes ExternalService exports in the
|
|
348
|
+
* cloud. `endpoint` is the local stand-in's address (absent in remote
|
|
349
|
+
* mode — the credentials carry the real endpoint).
|
|
350
|
+
*
|
|
351
|
+
* Returns the probe target file this realization registered, if any, so the
|
|
352
|
+
* caller can record it in session state and remove it on `--kill`.
|
|
353
|
+
*/
|
|
354
|
+
export declare function seedLocalMock(args: {
|
|
355
|
+
tenant: string;
|
|
356
|
+
app: string;
|
|
357
|
+
name: string;
|
|
358
|
+
decl: LocalMockDecl;
|
|
359
|
+
endpoint?: MockEndpoint;
|
|
360
|
+
}): Promise<string | undefined>;
|
|
361
|
+
//# sourceMappingURL=mocks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../../../src/commands/local/mocks.ts"],"names":[],"mappings":"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"}
|