@vibesdotdev/infra-core 0.0.1 → 1.0.0-rc.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +18 -0
- package/README.md +34 -63
- package/dist/bootstrap/seed.descriptor.d.ts +1 -1
- package/dist/bootstrap/seed.descriptor.d.ts.map +1 -1
- package/dist/bootstrap/seed.descriptor.js +1 -1
- package/dist/bootstrap/seed.descriptor.js.map +1 -1
- package/dist/bootstrap/seed.impl-shape.d.ts +1 -1
- package/dist/bootstrap/seed.impl-shape.d.ts.map +1 -1
- package/dist/bootstrap/seed.kind.d.ts +1 -3
- package/dist/bootstrap/seed.kind.d.ts.map +1 -1
- package/dist/bootstrap/seed.kind.js +17 -4
- package/dist/bootstrap/seed.kind.js.map +1 -1
- package/dist/bootstrap/seed.runner.d.ts +9 -2
- package/dist/bootstrap/seed.runner.d.ts.map +1 -1
- package/dist/bootstrap/seed.runner.js +37 -18
- package/dist/bootstrap/seed.runner.js.map +1 -1
- package/dist/capped-id.d.ts +19 -0
- package/dist/capped-id.d.ts.map +1 -0
- package/dist/capped-id.js +64 -0
- package/dist/capped-id.js.map +1 -0
- package/dist/cli/generate/artifact/artifact.cli-command.descriptor.d.ts +23 -0
- package/dist/cli/generate/artifact/artifact.cli-command.descriptor.d.ts.map +1 -0
- package/dist/cli/generate/artifact/artifact.cli-command.descriptor.js +33 -0
- package/dist/cli/generate/artifact/artifact.cli-command.descriptor.js.map +1 -0
- package/dist/cli/generate/artifact/artifact.cli-command.impl.d.ts +24 -0
- package/dist/cli/generate/artifact/artifact.cli-command.impl.d.ts.map +1 -0
- package/dist/cli/generate/artifact/artifact.cli-command.impl.js +73 -0
- package/dist/cli/generate/artifact/artifact.cli-command.impl.js.map +1 -0
- package/dist/cli/generate/context.d.ts +17 -0
- package/dist/cli/generate/context.d.ts.map +1 -0
- package/dist/cli/generate/context.js +24 -0
- package/dist/cli/generate/context.js.map +1 -0
- package/dist/cli/generate/generate/generate.cli-command.descriptor.d.ts +30 -0
- package/dist/cli/generate/generate/generate.cli-command.descriptor.d.ts.map +1 -0
- package/dist/cli/generate/generate/generate.cli-command.descriptor.js +25 -0
- package/dist/cli/generate/generate/generate.cli-command.descriptor.js.map +1 -0
- package/dist/cli/generate/generate/generate.cli-command.impl.d.ts +25 -0
- package/dist/cli/generate/generate/generate.cli-command.impl.d.ts.map +1 -0
- package/dist/cli/generate/generate/generate.cli-command.impl.js +64 -0
- package/dist/cli/generate/generate/generate.cli-command.impl.js.map +1 -0
- package/dist/cli/generate/generate-core.d.ts +51 -0
- package/dist/cli/generate/generate-core.d.ts.map +1 -0
- package/dist/cli/generate/generate-core.js +172 -0
- package/dist/cli/generate/generate-core.js.map +1 -0
- package/dist/cli/generate/index.d.ts +5 -0
- package/dist/cli/generate/index.d.ts.map +1 -0
- package/dist/cli/generate/index.js +5 -0
- package/dist/cli/generate/index.js.map +1 -0
- package/dist/credentials/resolve.d.ts +82 -22
- package/dist/credentials/resolve.d.ts.map +1 -1
- package/dist/credentials/resolve.js +251 -77
- package/dist/credentials/resolve.js.map +1 -1
- package/dist/deployment-budget.d.ts +319 -0
- package/dist/deployment-budget.d.ts.map +1 -0
- package/dist/deployment-budget.js +660 -0
- package/dist/deployment-budget.js.map +1 -0
- package/dist/deployment-environment.d.ts +30 -0
- package/dist/deployment-environment.d.ts.map +1 -0
- package/dist/deployment-environment.js +53 -0
- package/dist/deployment-environment.js.map +1 -0
- package/dist/deployment-graph.d.ts +185 -0
- package/dist/deployment-graph.d.ts.map +1 -0
- package/dist/deployment-graph.js +705 -0
- package/dist/deployment-graph.js.map +1 -0
- package/dist/deployment.d.ts +25 -4
- package/dist/deployment.d.ts.map +1 -1
- package/dist/deployment.js +105 -0
- package/dist/deployment.js.map +1 -1
- package/dist/doks/cloud/base.d.ts +49 -0
- package/dist/doks/cloud/base.d.ts.map +1 -0
- package/dist/doks/cloud/base.js +138 -0
- package/dist/doks/cloud/base.js.map +1 -0
- package/dist/doks/cloud/factory.d.ts +18 -0
- package/dist/doks/cloud/factory.d.ts.map +1 -0
- package/dist/doks/cloud/factory.js +22 -0
- package/dist/doks/cloud/factory.js.map +1 -0
- package/dist/doks/cloud/index.d.ts +5 -0
- package/dist/doks/cloud/index.d.ts.map +1 -0
- package/dist/doks/cloud/index.js +4 -0
- package/dist/doks/cloud/index.js.map +1 -0
- package/dist/doks/types.d.ts +95 -0
- package/dist/doks/types.d.ts.map +1 -0
- package/dist/doks/types.js +14 -0
- package/dist/doks/types.js.map +1 -0
- package/dist/generate/index.d.ts +29 -0
- package/dist/generate/index.d.ts.map +1 -0
- package/dist/generate/index.js +28 -0
- package/dist/generate/index.js.map +1 -0
- package/dist/generate/infra-generate.plugin.d.ts +3 -0
- package/dist/generate/infra-generate.plugin.d.ts.map +1 -0
- package/dist/generate/infra-generate.plugin.js +23 -0
- package/dist/generate/infra-generate.plugin.js.map +1 -0
- package/dist/generate/plugin.d.ts +2 -0
- package/dist/generate/plugin.d.ts.map +1 -0
- package/dist/generate/plugin.js +2 -0
- package/dist/generate/plugin.js.map +1 -0
- package/dist/heartbeat/cron-heartbeat.d.ts +97 -0
- package/dist/heartbeat/cron-heartbeat.d.ts.map +1 -0
- package/dist/heartbeat/cron-heartbeat.js +200 -0
- package/dist/heartbeat/cron-heartbeat.js.map +1 -0
- package/dist/index.d.ts +37 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -14
- package/dist/index.js.map +1 -1
- package/dist/infra.plugin.d.ts +1 -1
- package/dist/infra.plugin.d.ts.map +1 -1
- package/dist/infra.plugin.js +64 -12
- package/dist/infra.plugin.js.map +1 -1
- package/dist/kinds/alerts.kind.d.ts +64 -25
- package/dist/kinds/alerts.kind.d.ts.map +1 -1
- package/dist/kinds/alerts.kind.js +43 -16
- package/dist/kinds/alerts.kind.js.map +1 -1
- package/dist/kinds/artifact.kind.d.ts +58 -10
- package/dist/kinds/artifact.kind.d.ts.map +1 -1
- package/dist/kinds/artifact.kind.js +26 -9
- package/dist/kinds/artifact.kind.js.map +1 -1
- package/dist/kinds/billing.kind.d.ts +88 -0
- package/dist/kinds/billing.kind.d.ts.map +1 -0
- package/dist/kinds/billing.kind.js +48 -0
- package/dist/kinds/billing.kind.js.map +1 -0
- package/dist/kinds/build-job.kind.d.ts +383 -0
- package/dist/kinds/build-job.kind.d.ts.map +1 -0
- package/dist/kinds/build-job.kind.js +218 -0
- package/dist/kinds/build-job.kind.js.map +1 -0
- package/dist/kinds/cache-byte-store.d.ts +23 -0
- package/dist/kinds/cache-byte-store.d.ts.map +1 -0
- package/dist/kinds/cache-byte-store.js +9 -0
- package/dist/kinds/cache-byte-store.js.map +1 -0
- package/dist/kinds/cache.kind.d.ts +38 -94
- package/dist/kinds/cache.kind.d.ts.map +1 -1
- package/dist/kinds/cache.kind.js +39 -50
- package/dist/kinds/cache.kind.js.map +1 -1
- package/dist/kinds/cluster.kind.d.ts +154 -0
- package/dist/kinds/cluster.kind.d.ts.map +1 -0
- package/dist/kinds/cluster.kind.js +99 -0
- package/dist/kinds/cluster.kind.js.map +1 -0
- package/dist/kinds/compute-source.kind.d.ts +155 -0
- package/dist/kinds/compute-source.kind.d.ts.map +1 -0
- package/dist/kinds/compute-source.kind.js +158 -0
- package/dist/kinds/compute-source.kind.js.map +1 -0
- package/dist/kinds/container-registry.kind.d.ts +62 -0
- package/dist/kinds/container-registry.kind.d.ts.map +1 -0
- package/dist/kinds/container-registry.kind.js +47 -0
- package/dist/kinds/container-registry.kind.js.map +1 -0
- package/dist/kinds/database-migrator.kind.d.ts +6 -0
- package/dist/kinds/database-migrator.kind.d.ts.map +1 -0
- package/dist/kinds/database-migrator.kind.js +28 -0
- package/dist/kinds/database-migrator.kind.js.map +1 -0
- package/dist/kinds/database.kind.d.ts +114 -93
- package/dist/kinds/database.kind.d.ts.map +1 -1
- package/dist/kinds/database.kind.js +93 -54
- package/dist/kinds/database.kind.js.map +1 -1
- package/dist/kinds/deployment-provider.kind.d.ts +5 -0
- package/dist/kinds/deployment-provider.kind.d.ts.map +1 -0
- package/dist/kinds/deployment-provider.kind.js +11 -0
- package/dist/kinds/deployment-provider.kind.js.map +1 -0
- package/dist/kinds/discovery.d.ts +5 -12
- package/dist/kinds/discovery.d.ts.map +1 -1
- package/dist/kinds/discovery.js +5 -17
- package/dist/kinds/discovery.js.map +1 -1
- package/dist/kinds/dns.kind.d.ts +162 -0
- package/dist/kinds/dns.kind.d.ts.map +1 -0
- package/dist/kinds/dns.kind.js +54 -0
- package/dist/kinds/dns.kind.js.map +1 -0
- package/dist/kinds/drift.kind.d.ts +115 -0
- package/dist/kinds/drift.kind.d.ts.map +1 -0
- package/dist/kinds/drift.kind.js +60 -0
- package/dist/kinds/drift.kind.js.map +1 -0
- package/dist/kinds/edge-hostname.kind.d.ts +124 -0
- package/dist/kinds/edge-hostname.kind.d.ts.map +1 -0
- package/dist/kinds/edge-hostname.kind.js +87 -0
- package/dist/kinds/edge-hostname.kind.js.map +1 -0
- package/dist/kinds/edge-tls.kind.d.ts +194 -0
- package/dist/kinds/edge-tls.kind.d.ts.map +1 -0
- package/dist/kinds/edge-tls.kind.js +58 -0
- package/dist/kinds/edge-tls.kind.js.map +1 -0
- package/dist/kinds/firewall.kind.d.ts +92 -0
- package/dist/kinds/firewall.kind.d.ts.map +1 -0
- package/dist/kinds/firewall.kind.js +59 -0
- package/dist/kinds/firewall.kind.js.map +1 -0
- package/dist/kinds/git-hosting.kind.d.ts +36 -38
- package/dist/kinds/git-hosting.kind.d.ts.map +1 -1
- package/dist/kinds/git-hosting.kind.js +23 -34
- package/dist/kinds/git-hosting.kind.js.map +1 -1
- package/dist/kinds/index.d.ts +41 -15
- package/dist/kinds/index.d.ts.map +1 -1
- package/dist/kinds/index.js +40 -14
- package/dist/kinds/index.js.map +1 -1
- package/dist/kinds/inventory.kind.d.ts +245 -0
- package/dist/kinds/inventory.kind.d.ts.map +1 -0
- package/dist/kinds/inventory.kind.js +243 -0
- package/dist/kinds/inventory.kind.js.map +1 -0
- package/dist/kinds/load-balancer.kind.d.ts +135 -0
- package/dist/kinds/load-balancer.kind.d.ts.map +1 -0
- package/dist/kinds/load-balancer.kind.js +71 -0
- package/dist/kinds/load-balancer.kind.js.map +1 -0
- package/dist/kinds/logs.kind.d.ts +74 -3
- package/dist/kinds/logs.kind.d.ts.map +1 -1
- package/dist/kinds/logs.kind.js +26 -17
- package/dist/kinds/logs.kind.js.map +1 -1
- package/dist/kinds/nfs.kind.d.ts +67 -0
- package/dist/kinds/nfs.kind.d.ts.map +1 -0
- package/dist/kinds/nfs.kind.js +45 -0
- package/dist/kinds/nfs.kind.js.map +1 -0
- package/dist/kinds/node-pool.kind.d.ts +134 -0
- package/dist/kinds/node-pool.kind.d.ts.map +1 -0
- package/dist/kinds/node-pool.kind.js +88 -0
- package/dist/kinds/node-pool.kind.js.map +1 -0
- package/dist/kinds/object-storage.kind.d.ts +50 -24
- package/dist/kinds/object-storage.kind.d.ts.map +1 -1
- package/dist/kinds/object-storage.kind.js +40 -23
- package/dist/kinds/object-storage.kind.js.map +1 -1
- package/dist/kinds/observability.kind.d.ts +104 -6
- package/dist/kinds/observability.kind.d.ts.map +1 -1
- package/dist/kinds/observability.kind.js +67 -9
- package/dist/kinds/observability.kind.js.map +1 -1
- package/dist/kinds/package-registry.kind.d.ts +141 -35
- package/dist/kinds/package-registry.kind.d.ts.map +1 -1
- package/dist/kinds/package-registry.kind.js +55 -25
- package/dist/kinds/package-registry.kind.js.map +1 -1
- package/dist/kinds/queue.kind.d.ts +67 -63
- package/dist/kinds/queue.kind.d.ts.map +1 -1
- package/dist/kinds/queue.kind.js +55 -33
- package/dist/kinds/queue.kind.js.map +1 -1
- package/dist/kinds/read-descriptor.d.ts +15 -0
- package/dist/kinds/read-descriptor.d.ts.map +1 -0
- package/dist/kinds/read-descriptor.js +11 -0
- package/dist/kinds/read-descriptor.js.map +1 -0
- package/dist/kinds/rum.kind.d.ts +36 -6
- package/dist/kinds/rum.kind.d.ts.map +1 -1
- package/dist/kinds/rum.kind.js +6 -7
- package/dist/kinds/rum.kind.js.map +1 -1
- package/dist/kinds/sandbox.kind.d.ts +136 -40
- package/dist/kinds/sandbox.kind.d.ts.map +1 -1
- package/dist/kinds/sandbox.kind.js +82 -43
- package/dist/kinds/sandbox.kind.js.map +1 -1
- package/dist/kinds/select-compute-source.d.ts +72 -0
- package/dist/kinds/select-compute-source.d.ts.map +1 -0
- package/dist/kinds/select-compute-source.js +170 -0
- package/dist/kinds/select-compute-source.js.map +1 -0
- package/dist/kinds/service-release.kind.d.ts +771 -0
- package/dist/kinds/service-release.kind.d.ts.map +1 -0
- package/dist/kinds/service-release.kind.js +676 -0
- package/dist/kinds/service-release.kind.js.map +1 -0
- package/dist/kinds/spend-guard.kind.d.ts +41 -0
- package/dist/kinds/spend-guard.kind.d.ts.map +1 -0
- package/dist/kinds/spend-guard.kind.js +140 -0
- package/dist/kinds/spend-guard.kind.js.map +1 -0
- package/dist/kinds/utilization.kind.d.ts +88 -0
- package/dist/kinds/utilization.kind.d.ts.map +1 -0
- package/dist/kinds/utilization.kind.js +62 -0
- package/dist/kinds/utilization.kind.js.map +1 -0
- package/dist/kinds/volume.kind.d.ts +54 -0
- package/dist/kinds/volume.kind.d.ts.map +1 -0
- package/dist/kinds/volume.kind.js +39 -0
- package/dist/kinds/volume.kind.js.map +1 -0
- package/dist/kinds/vpc.kind.d.ts +61 -0
- package/dist/kinds/vpc.kind.d.ts.map +1 -0
- package/dist/kinds/vpc.kind.js +51 -0
- package/dist/kinds/vpc.kind.js.map +1 -0
- package/dist/kinds/web-app.kind.d.ts +118 -45
- package/dist/kinds/web-app.kind.d.ts.map +1 -1
- package/dist/kinds/web-app.kind.js +69 -42
- package/dist/kinds/web-app.kind.js.map +1 -1
- package/dist/kinds/worker.kind.d.ts +129 -188
- package/dist/kinds/worker.kind.d.ts.map +1 -1
- package/dist/kinds/worker.kind.js +45 -123
- package/dist/kinds/worker.kind.js.map +1 -1
- package/dist/schemas/database-migration.d.ts +173 -0
- package/dist/schemas/database-migration.d.ts.map +1 -0
- package/dist/schemas/database-migration.js +88 -0
- package/dist/schemas/database-migration.js.map +1 -0
- package/dist/schemas/deployment-environment.d.ts +11 -0
- package/dist/schemas/deployment-environment.d.ts.map +1 -0
- package/dist/schemas/deployment-environment.js +9 -0
- package/dist/schemas/deployment-environment.js.map +1 -0
- package/dist/schemas/deployment-provider.d.ts +383 -0
- package/dist/schemas/deployment-provider.d.ts.map +1 -0
- package/dist/schemas/deployment-provider.js +211 -0
- package/dist/schemas/deployment-provider.js.map +1 -0
- package/dist/schemas/log-stream.d.ts +27 -0
- package/dist/schemas/log-stream.d.ts.map +1 -0
- package/dist/schemas/log-stream.js +31 -0
- package/dist/schemas/log-stream.js.map +1 -0
- package/dist/schemas/spend-guard.d.ts +155 -0
- package/dist/schemas/spend-guard.d.ts.map +1 -0
- package/dist/schemas/spend-guard.js +61 -0
- package/dist/schemas/spend-guard.js.map +1 -0
- package/dist/schemas.d.ts +195 -20
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +151 -31
- package/dist/schemas.js.map +1 -1
- package/dist/service.d.ts +87 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +199 -0
- package/dist/service.js.map +1 -0
- package/dist/settle-work.d.ts +20 -0
- package/dist/settle-work.d.ts.map +1 -0
- package/dist/settle-work.js +22 -0
- package/dist/settle-work.js.map +1 -0
- package/dist/web-app-projection.d.ts +208 -0
- package/dist/web-app-projection.d.ts.map +1 -0
- package/dist/web-app-projection.js +95 -0
- package/dist/web-app-projection.js.map +1 -0
- package/package.json +123 -40
- package/SPEC.md +0 -169
- package/src/bootstrap/index.ts +0 -15
- package/src/bootstrap/seed.descriptor.ts +0 -24
- package/src/bootstrap/seed.impl-shape.ts +0 -5
- package/src/bootstrap/seed.kind.ts +0 -26
- package/src/bootstrap/seed.runner.ts +0 -87
- package/src/credentials/resolve.ts +0 -205
- package/src/deployment.ts +0 -57
- package/src/index.ts +0 -149
- package/src/infra.plugin.ts +0 -54
- package/src/kinds/alerts.kind.ts +0 -164
- package/src/kinds/artifact.kind.ts +0 -96
- package/src/kinds/cache.kind.ts +0 -104
- package/src/kinds/database.kind.ts +0 -120
- package/src/kinds/discovery.ts +0 -26
- package/src/kinds/git-hosting.kind.ts +0 -100
- package/src/kinds/index.ts +0 -139
- package/src/kinds/logs.kind.ts +0 -104
- package/src/kinds/object-storage.kind.ts +0 -101
- package/src/kinds/observability.kind.ts +0 -178
- package/src/kinds/package-registry.kind.ts +0 -95
- package/src/kinds/queue.kind.ts +0 -102
- package/src/kinds/rum.kind.ts +0 -135
- package/src/kinds/sandbox.kind.ts +0 -115
- package/src/kinds/web-app.kind.ts +0 -103
- package/src/kinds/worker.kind.ts +0 -203
- package/src/schemas.ts +0 -127
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contracts of the `infra/deployment-provider` kind: the capabilities a
|
|
3
|
+
* provider declares, and the implementation every provider registers to
|
|
4
|
+
* resolve its environment, render, check and release one app's deployment.
|
|
5
|
+
*
|
|
6
|
+
* The deploy driver (`vibes infra deploy run`) owns every provider-neutral
|
|
7
|
+
* step: the run ledger, readiness, the workspace build, pre-deploy commands,
|
|
8
|
+
* database migrations, the smoke probe and the deployment marker. It hands the
|
|
9
|
+
* provider those steps as {@link DeploymentReleaseHost} callbacks; the provider
|
|
10
|
+
* calls the ones its release uses, in its own order (Cloudflare migrates inside
|
|
11
|
+
* its staged config; a provider that builds remotely never calls `build`).
|
|
12
|
+
*/
|
|
13
|
+
import * as z from 'zod/v4';
|
|
14
|
+
import { type JsonObject } from '@vibesdotdev/kernel/schemas/json';
|
|
15
|
+
import { type AppDeployment } from '../schemas.ts';
|
|
16
|
+
import type { DatabaseMigrationCredentialSource, DatabaseMigrationLog } from './database-migration.ts';
|
|
17
|
+
import type { WebAppDescriptor } from '../kinds/web-app.kind.ts';
|
|
18
|
+
import type { WebAppProjection, WebAppProjectionOptions } from '../web-app-projection.ts';
|
|
19
|
+
/** Provider-owned deployment capabilities, admitted by the host's plugin selection. */
|
|
20
|
+
export declare const DeploymentProviderDescriptorSchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
name: z.ZodOptional<z.ZodString>;
|
|
23
|
+
description: z.ZodOptional<z.ZodString>;
|
|
24
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
25
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
26
|
+
priority: z.ZodOptional<z.ZodNumber>;
|
|
27
|
+
capabilityId: z.ZodOptional<z.ZodString>;
|
|
28
|
+
requiredContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
29
|
+
optionalContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
30
|
+
config: z.ZodOptional<z.ZodUnknown>;
|
|
31
|
+
retention: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
32
|
+
maxAgeDays: z.ZodOptional<z.ZodNumber>;
|
|
33
|
+
maxEntries: z.ZodOptional<z.ZodNumber>;
|
|
34
|
+
maxBytes: z.ZodOptional<z.ZodNumber>;
|
|
35
|
+
cascadeFrom: z.ZodOptional<z.ZodString>;
|
|
36
|
+
ageField: z.ZodOptional<z.ZodString>;
|
|
37
|
+
reason: z.ZodString;
|
|
38
|
+
enforcedBy: z.ZodOptional<z.ZodString>;
|
|
39
|
+
}, z.core.$strip>]>>;
|
|
40
|
+
kind: z.ZodLiteral<"infra/deployment-provider">;
|
|
41
|
+
hardware: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
42
|
+
consumer: "consumer";
|
|
43
|
+
cloud: "cloud";
|
|
44
|
+
}>>>;
|
|
45
|
+
runtimes: z.ZodArray<z.ZodEnum<{
|
|
46
|
+
browser: "browser";
|
|
47
|
+
worker: "worker";
|
|
48
|
+
edge: "edge";
|
|
49
|
+
node: "node";
|
|
50
|
+
}>>;
|
|
51
|
+
pty: z.ZodBoolean;
|
|
52
|
+
projectionKeys: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
53
|
+
renderer: z.ZodOptional<z.ZodObject<{
|
|
54
|
+
module: z.ZodString;
|
|
55
|
+
export: z.ZodString;
|
|
56
|
+
}, z.core.$strip>>;
|
|
57
|
+
declarations: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
58
|
+
vendor: z.ZodOptional<z.ZodString>;
|
|
59
|
+
bundle: z.ZodOptional<z.ZodObject<{
|
|
60
|
+
scopes: z.ZodArray<z.ZodObject<{
|
|
61
|
+
hardware: z.ZodEnum<{
|
|
62
|
+
consumer: "consumer";
|
|
63
|
+
cloud: "cloud";
|
|
64
|
+
}>;
|
|
65
|
+
surface: z.ZodEnum<{
|
|
66
|
+
agent: "agent";
|
|
67
|
+
browser: "browser";
|
|
68
|
+
ssr: "ssr";
|
|
69
|
+
cli: "cli";
|
|
70
|
+
tui: "tui";
|
|
71
|
+
worker: "worker";
|
|
72
|
+
mcp: "mcp";
|
|
73
|
+
bridge: "bridge";
|
|
74
|
+
}>;
|
|
75
|
+
}, z.core.$strip>>;
|
|
76
|
+
conditions: z.ZodArray<z.ZodString>;
|
|
77
|
+
mainFields: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
78
|
+
builtins: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
79
|
+
support: z.ZodEnum<{
|
|
80
|
+
native: "native";
|
|
81
|
+
partial: "partial";
|
|
82
|
+
stub: "stub";
|
|
83
|
+
}>;
|
|
84
|
+
since: z.ZodOptional<z.ZodString>;
|
|
85
|
+
flag: z.ZodOptional<z.ZodString>;
|
|
86
|
+
note: z.ZodOptional<z.ZodString>;
|
|
87
|
+
}, z.core.$strip>>>;
|
|
88
|
+
providedSchemes: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
89
|
+
providedModules: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
90
|
+
hostPackages: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
91
|
+
entryField: z.ZodOptional<z.ZodString>;
|
|
92
|
+
maxScriptBytes: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
maxAssetFileBytes: z.ZodOptional<z.ZodNumber>;
|
|
94
|
+
}, z.core.$strip>>;
|
|
95
|
+
}, z.core.$strip>;
|
|
96
|
+
export type DeploymentProviderDescriptor = z.infer<typeof DeploymentProviderDescriptorSchema>;
|
|
97
|
+
/** A line of provider tooling output. */
|
|
98
|
+
export type DeploymentOutputLine = (stream: 'stdout' | 'stderr', line: string) => void;
|
|
99
|
+
/** The environment variables a provider's tooling and the app's render run under. */
|
|
100
|
+
export declare const DeploymentProviderEnvironmentSchema: z.ZodObject<{
|
|
101
|
+
variables: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
102
|
+
projected: z.ZodBoolean;
|
|
103
|
+
}, z.core.$strip>;
|
|
104
|
+
export type DeploymentProviderEnvironment = z.infer<typeof DeploymentProviderEnvironmentSchema>;
|
|
105
|
+
export declare const DeploymentProviderEnvironmentRequestSchema: z.ZodObject<{
|
|
106
|
+
environment: z.ZodOptional<z.ZodString>;
|
|
107
|
+
credentialSource: z.ZodDefault<z.ZodEnum<{
|
|
108
|
+
"secrets-store": "secrets-store";
|
|
109
|
+
ambient: "ambient";
|
|
110
|
+
}>>;
|
|
111
|
+
}, z.core.$strip>;
|
|
112
|
+
export type DeploymentProviderEnvironmentRequest = z.infer<typeof DeploymentProviderEnvironmentRequestSchema>;
|
|
113
|
+
export interface DeploymentProviderEnvironmentOptions extends DeploymentProviderEnvironmentRequest {
|
|
114
|
+
readonly credentialSource: DatabaseMigrationCredentialSource;
|
|
115
|
+
readonly log: DatabaseMigrationLog;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* What a provider's renderer answers for one evaluated deployment module. The
|
|
119
|
+
* artifacts are serialized text so the answer crosses a process boundary.
|
|
120
|
+
*/
|
|
121
|
+
export declare const DeploymentModuleRenderSchema: z.ZodObject<{
|
|
122
|
+
managed: z.ZodBoolean;
|
|
123
|
+
renders: z.ZodBoolean;
|
|
124
|
+
rendered: z.ZodNullable<z.ZodString>;
|
|
125
|
+
localRendered: z.ZodNullable<z.ZodString>;
|
|
126
|
+
unitName: z.ZodNullable<z.ZodString>;
|
|
127
|
+
}, z.core.$strip>;
|
|
128
|
+
export type DeploymentModuleRender = z.infer<typeof DeploymentModuleRenderSchema>;
|
|
129
|
+
/** A callable a deployment module exports for its provider's renderer to invoke (e.g. a config generator). */
|
|
130
|
+
export type DeploymentModuleCallable = (...args: never[]) => DeploymentModuleValue;
|
|
131
|
+
/** One value of an evaluated deployment module's export: data, or a callable its renderer invokes. */
|
|
132
|
+
export type DeploymentModuleValue = string | number | boolean | null | undefined | DeploymentModuleCallable | DeploymentModuleValue[] | {
|
|
133
|
+
[field: string]: DeploymentModuleValue;
|
|
134
|
+
};
|
|
135
|
+
export declare const DeploymentModuleValueSchema: z.ZodType<DeploymentModuleValue>;
|
|
136
|
+
/** An evaluated deployment module's default export, admitted by the loader before any renderer reads it. */
|
|
137
|
+
export declare const DeploymentModuleExportSchema: z.ZodRecord<z.ZodString, z.ZodType<DeploymentModuleValue, unknown, z.core.$ZodTypeInternals<DeploymentModuleValue, unknown>>>;
|
|
138
|
+
export type DeploymentModuleExport = z.infer<typeof DeploymentModuleExportSchema>;
|
|
139
|
+
/**
|
|
140
|
+
* The provider export a descriptor's `renderer` names; it reads the export's
|
|
141
|
+
* provider vocabulary with its own schema.
|
|
142
|
+
*/
|
|
143
|
+
export type DeploymentModuleRenderer = (exported: DeploymentModuleExport, projectionEnvironment: Readonly<Record<string, string>> | undefined) => DeploymentModuleRender;
|
|
144
|
+
/** The app's deployment module as one evaluation saw it. */
|
|
145
|
+
export interface DeploymentModuleEvaluation {
|
|
146
|
+
/** The source the driver evaluated; absent on older callers that did not carry provenance. */
|
|
147
|
+
readonly source?: 'web-app' | 'deployment-config';
|
|
148
|
+
/** The module's default export as data (callables dropped), read by the provider's own schema. */
|
|
149
|
+
readonly exported: JsonObject;
|
|
150
|
+
/** The module opts into a generated, committed provider artifact. */
|
|
151
|
+
readonly managed: boolean;
|
|
152
|
+
/** Whether the module renders a provider artifact under an environment. */
|
|
153
|
+
readonly renders: boolean;
|
|
154
|
+
/** The provider artifact the module rendered under the evaluation's environment (e.g. a wrangler config), when it renders one. */
|
|
155
|
+
readonly rendered: JsonObject | null;
|
|
156
|
+
/** The artifact local development reads, when the module renders one. */
|
|
157
|
+
readonly localRendered: JsonObject | null;
|
|
158
|
+
/** The provider's name for the deployed unit (e.g. a Worker name), when the module declares one. */
|
|
159
|
+
readonly unitName: string | null;
|
|
160
|
+
}
|
|
161
|
+
/** The provider-neutral data of one release, parsed at the driver's boundary. */
|
|
162
|
+
export declare const DeploymentReleaseRequestSchema: z.ZodObject<{
|
|
163
|
+
appDir: z.ZodString;
|
|
164
|
+
workspaceRoot: z.ZodString;
|
|
165
|
+
repositoryRoot: z.ZodOptional<z.ZodString>;
|
|
166
|
+
environment: z.ZodString;
|
|
167
|
+
providerEnvironment: z.ZodNullable<z.ZodString>;
|
|
168
|
+
dryRun: z.ZodBoolean;
|
|
169
|
+
skipBuild: z.ZodBoolean;
|
|
170
|
+
source: z.ZodObject<{
|
|
171
|
+
commit: z.ZodOptional<z.ZodString>;
|
|
172
|
+
branch: z.ZodOptional<z.ZodString>;
|
|
173
|
+
compositionDigest: z.ZodOptional<z.ZodString>;
|
|
174
|
+
}, z.core.$strip>;
|
|
175
|
+
options: z.ZodType<JsonObject, JsonObject, z.core.$ZodTypeInternals<JsonObject, JsonObject>>;
|
|
176
|
+
}, z.core.$strip>;
|
|
177
|
+
export type DeploymentReleaseRequest = z.infer<typeof DeploymentReleaseRequestSchema>;
|
|
178
|
+
/** Outputs prepared by the selected provider before the first final artifact seal. */
|
|
179
|
+
export declare const DeploymentArtifactPreparationSchema: z.ZodObject<{
|
|
180
|
+
paths: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
181
|
+
references: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
182
|
+
}, z.core.$strip>;
|
|
183
|
+
export type DeploymentArtifactPreparation = z.infer<typeof DeploymentArtifactPreparationSchema>;
|
|
184
|
+
/** Evidence of the workspace build and its preflight. */
|
|
185
|
+
export declare const DeploymentBuildEvidenceSchema: z.ZodObject<{
|
|
186
|
+
warnings: z.ZodArray<z.ZodString>;
|
|
187
|
+
artifact: z.ZodOptional<z.ZodObject<{
|
|
188
|
+
compositionDigest: z.ZodString;
|
|
189
|
+
sourceCommit: z.ZodString;
|
|
190
|
+
artifactDigest: z.ZodString;
|
|
191
|
+
references: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
192
|
+
}, z.core.$strip>>;
|
|
193
|
+
}, z.core.$strip>;
|
|
194
|
+
export type DeploymentBuildEvidence = z.infer<typeof DeploymentBuildEvidenceSchema>;
|
|
195
|
+
/**
|
|
196
|
+
* The driver-owned steps a provider's release calls. Each refuses with a typed
|
|
197
|
+
* CapabilityError; a provider propagates the refusal unchanged.
|
|
198
|
+
*/
|
|
199
|
+
export interface DeploymentReleaseHost {
|
|
200
|
+
/** Preflight the workspace, build the app's artifacts unless skipped, and preflight again. */
|
|
201
|
+
build(options?: {
|
|
202
|
+
/** After app build, before the first final seal. Runs once in the retained provider invocation; never after release effects. */
|
|
203
|
+
prepareArtifacts?: () => Promise<DeploymentArtifactPreparation>;
|
|
204
|
+
}): Promise<DeploymentBuildEvidence>;
|
|
205
|
+
/** Verify the held source independently of where this provider builds its artifact. */
|
|
206
|
+
assertSource?(): Promise<void>;
|
|
207
|
+
/** Revalidate the held source, composition, installed locks and emitted bytes before an external effect. */
|
|
208
|
+
assertArtifacts?(): Promise<void>;
|
|
209
|
+
/** Run the deployment's declared pre-deploy commands under `variables`. */
|
|
210
|
+
runPreDeployCommands(variables: Readonly<Record<string, string>>): Promise<void>;
|
|
211
|
+
/**
|
|
212
|
+
* Apply the app's pending remote migrations, reading the databases from
|
|
213
|
+
* `configFile` (relative to the app directory) under `variables`. Declared
|
|
214
|
+
* migrations no registered engine applies are a refusal.
|
|
215
|
+
*/
|
|
216
|
+
migrate(input: {
|
|
217
|
+
configFile: string;
|
|
218
|
+
variables: Readonly<Record<string, string>>;
|
|
219
|
+
}): Promise<void>;
|
|
220
|
+
/** Evaluate the app's deployment module in a fresh process under `variables`. */
|
|
221
|
+
evaluate(variables: Readonly<Record<string, string>>): Promise<DeploymentModuleEvaluation>;
|
|
222
|
+
}
|
|
223
|
+
export interface DeploymentReleaseOptions extends DeploymentReleaseRequest {
|
|
224
|
+
readonly deployment: AppDeployment;
|
|
225
|
+
/** The identity evaluation the driver loaded the deployment from. */
|
|
226
|
+
readonly module: DeploymentModuleEvaluation;
|
|
227
|
+
/** The provider environment plus the driver's build identity (`VIBES_BUILD_VERSION`). */
|
|
228
|
+
readonly variables: Readonly<Record<string, string>>;
|
|
229
|
+
readonly host: DeploymentReleaseHost;
|
|
230
|
+
readonly log: DatabaseMigrationLog;
|
|
231
|
+
readonly onLine: DeploymentOutputLine;
|
|
232
|
+
}
|
|
233
|
+
export declare const DeploymentReleaseResultSchema: z.ZodObject<{
|
|
234
|
+
status: z.ZodEnum<{
|
|
235
|
+
released: "released";
|
|
236
|
+
"dry-run": "dry-run";
|
|
237
|
+
}>;
|
|
238
|
+
deployedUrl: z.ZodOptional<z.ZodString>;
|
|
239
|
+
externalDeploymentId: z.ZodOptional<z.ZodString>;
|
|
240
|
+
providerTraceRef: z.ZodOptional<z.ZodString>;
|
|
241
|
+
probe: z.ZodBoolean;
|
|
242
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
243
|
+
summary: z.ZodOptional<z.ZodString>;
|
|
244
|
+
result: z.ZodType<JsonObject, JsonObject, z.core.$ZodTypeInternals<JsonObject, JsonObject>>;
|
|
245
|
+
hostnameTargets: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
246
|
+
hostname: z.ZodString;
|
|
247
|
+
type: z.ZodEnum<{
|
|
248
|
+
A: "A";
|
|
249
|
+
CNAME: "CNAME";
|
|
250
|
+
AAAA: "AAAA";
|
|
251
|
+
}>;
|
|
252
|
+
content: z.ZodString;
|
|
253
|
+
}, z.core.$strip>>>;
|
|
254
|
+
}, z.core.$strip>;
|
|
255
|
+
export type DeploymentReleaseResult = z.infer<typeof DeploymentReleaseResultSchema>;
|
|
256
|
+
/** One readiness finding. `fail` refuses a deploy; `warn` and `unknown` are reported. */
|
|
257
|
+
export declare const DeploymentReadinessCheckSchema: z.ZodObject<{
|
|
258
|
+
id: z.ZodString;
|
|
259
|
+
label: z.ZodString;
|
|
260
|
+
status: z.ZodEnum<{
|
|
261
|
+
unknown: "unknown";
|
|
262
|
+
warn: "warn";
|
|
263
|
+
pass: "pass";
|
|
264
|
+
fail: "fail";
|
|
265
|
+
}>;
|
|
266
|
+
summary: z.ZodString;
|
|
267
|
+
evidence: z.ZodArray<z.ZodString>;
|
|
268
|
+
action: z.ZodNullable<z.ZodString>;
|
|
269
|
+
}, z.core.$strip>;
|
|
270
|
+
export type DeploymentReadinessCheck = z.infer<typeof DeploymentReadinessCheckSchema>;
|
|
271
|
+
/**
|
|
272
|
+
* What a provider's artifact says about one selected environment: names only,
|
|
273
|
+
* never values. The driver judges routes and secrets against the deployment
|
|
274
|
+
* and the runtime's environment catalog from these facts.
|
|
275
|
+
*/
|
|
276
|
+
export declare const DeploymentEnvironmentFactsSchema: z.ZodObject<{
|
|
277
|
+
generated: z.ZodBoolean;
|
|
278
|
+
resolved: z.ZodBoolean;
|
|
279
|
+
providerEnvironment: z.ZodNullable<z.ZodString>;
|
|
280
|
+
explicitEnvironment: z.ZodBoolean;
|
|
281
|
+
routesInherited: z.ZodBoolean;
|
|
282
|
+
routes: z.ZodArray<z.ZodString>;
|
|
283
|
+
boundSecrets: z.ZodArray<z.ZodString>;
|
|
284
|
+
declaredRequirements: z.ZodArray<z.ZodString>;
|
|
285
|
+
}, z.core.$strip>;
|
|
286
|
+
export type DeploymentEnvironmentFacts = z.infer<typeof DeploymentEnvironmentFactsSchema>;
|
|
287
|
+
export interface DeploymentInspectionOptions {
|
|
288
|
+
readonly appDir: string;
|
|
289
|
+
/** The deployment module's path, for evidence. */
|
|
290
|
+
readonly configPath: string;
|
|
291
|
+
/** The directory evidence paths are shown relative to. */
|
|
292
|
+
readonly displayBase: string;
|
|
293
|
+
readonly deployment: AppDeployment;
|
|
294
|
+
/** The module rendered under the readiness environment. */
|
|
295
|
+
readonly module: DeploymentModuleEvaluation;
|
|
296
|
+
/** The selected Vibes deployment environment. */
|
|
297
|
+
readonly environment: string;
|
|
298
|
+
/** The deployed-unit name of every app in the collection, by app id. */
|
|
299
|
+
readonly units: ReadonlyMap<string, string>;
|
|
300
|
+
readonly log: DatabaseMigrationLog;
|
|
301
|
+
}
|
|
302
|
+
export interface DeploymentInspection {
|
|
303
|
+
readonly facts: DeploymentEnvironmentFacts;
|
|
304
|
+
/** This provider's readiness checks (its artifact, its stores, its topology). */
|
|
305
|
+
readonly checks: readonly DeploymentReadinessCheck[];
|
|
306
|
+
}
|
|
307
|
+
export declare const DeploymentArtifactResultSchema: z.ZodObject<{
|
|
308
|
+
status: z.ZodEnum<{
|
|
309
|
+
error: "error";
|
|
310
|
+
skipped: "skipped";
|
|
311
|
+
unchanged: "unchanged";
|
|
312
|
+
updated: "updated";
|
|
313
|
+
drift: "drift";
|
|
314
|
+
}>;
|
|
315
|
+
path: z.ZodString;
|
|
316
|
+
unitName: z.ZodOptional<z.ZodString>;
|
|
317
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
318
|
+
diff: z.ZodOptional<z.ZodString>;
|
|
319
|
+
note: z.ZodOptional<z.ZodString>;
|
|
320
|
+
}, z.core.$strip>;
|
|
321
|
+
export type DeploymentArtifactResult = z.infer<typeof DeploymentArtifactResultSchema>;
|
|
322
|
+
export interface DeploymentArtifactOptions {
|
|
323
|
+
readonly appDir: string;
|
|
324
|
+
readonly deployment: AppDeployment;
|
|
325
|
+
readonly module: DeploymentModuleEvaluation;
|
|
326
|
+
/** Render the local-development artifact instead of the deployed one. */
|
|
327
|
+
readonly local: boolean;
|
|
328
|
+
/** `check` reads only; `write` rewrites a drifted artifact. */
|
|
329
|
+
readonly mode: 'check' | 'write';
|
|
330
|
+
readonly log: DatabaseMigrationLog;
|
|
331
|
+
}
|
|
332
|
+
export declare const DeploymentRollbackOutcomeSchema: z.ZodObject<{
|
|
333
|
+
unit: z.ZodString;
|
|
334
|
+
retained: z.ZodArray<z.ZodString>;
|
|
335
|
+
serving: z.ZodArray<z.ZodObject<{
|
|
336
|
+
versionId: z.ZodString;
|
|
337
|
+
percentage: z.ZodNumber;
|
|
338
|
+
}, z.core.$strip>>;
|
|
339
|
+
versions: z.ZodArray<z.ZodObject<{
|
|
340
|
+
id: z.ZodString;
|
|
341
|
+
createdOn: z.ZodOptional<z.ZodString>;
|
|
342
|
+
message: z.ZodOptional<z.ZodString>;
|
|
343
|
+
}, z.core.$strip>>;
|
|
344
|
+
target: z.ZodOptional<z.ZodString>;
|
|
345
|
+
command: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
346
|
+
dryRun: z.ZodBoolean;
|
|
347
|
+
rolledBack: z.ZodBoolean;
|
|
348
|
+
}, z.core.$strip>;
|
|
349
|
+
export type DeploymentRollbackOutcome = z.infer<typeof DeploymentRollbackOutcomeSchema>;
|
|
350
|
+
export interface DeploymentRollbackOptions {
|
|
351
|
+
readonly appDir: string;
|
|
352
|
+
readonly deployment: AppDeployment;
|
|
353
|
+
readonly module: DeploymentModuleEvaluation;
|
|
354
|
+
/** The selected Vibes deployment environment. */
|
|
355
|
+
readonly environment: string;
|
|
356
|
+
readonly credentialSource: DatabaseMigrationCredentialSource;
|
|
357
|
+
/** The version to serve; absent lists versions (dry run only). */
|
|
358
|
+
readonly to?: string;
|
|
359
|
+
readonly message?: string;
|
|
360
|
+
readonly dryRun: boolean;
|
|
361
|
+
/** The operator's write gate. */
|
|
362
|
+
readonly yes: boolean;
|
|
363
|
+
/** Provider-specific command options, read by the provider's own schema. */
|
|
364
|
+
readonly options: JsonObject;
|
|
365
|
+
readonly log: DatabaseMigrationLog;
|
|
366
|
+
}
|
|
367
|
+
export interface DeploymentProviderImplementation {
|
|
368
|
+
/** Project a registered web app's declared data without evaluating a deployment module. */
|
|
369
|
+
projectWebApp?(descriptor: WebAppDescriptor, options: WebAppProjectionOptions): Promise<WebAppProjection>;
|
|
370
|
+
/** Refuse provider options this provider cannot honour (`INVALID_INPUT`), before the driver records the run. */
|
|
371
|
+
validateOptions(options: JsonObject): void;
|
|
372
|
+
/** The environment this provider's tooling and the app's render run under, resolved once per deploy. */
|
|
373
|
+
environment(options: DeploymentProviderEnvironmentOptions): Promise<DeploymentProviderEnvironment>;
|
|
374
|
+
/** Release one app. Refuses with a typed CapabilityError; a provider failure is never reported as a release. */
|
|
375
|
+
release(options: DeploymentReleaseOptions): Promise<DeploymentReleaseResult>;
|
|
376
|
+
/** The environment facts and provider readiness checks for one app. */
|
|
377
|
+
inspect(options: DeploymentInspectionOptions): Promise<DeploymentInspection>;
|
|
378
|
+
/** Check or rewrite the app's committed provider artifact. */
|
|
379
|
+
regenerate(options: DeploymentArtifactOptions): Promise<DeploymentArtifactResult>;
|
|
380
|
+
/** Return the app to a deployed version; a provider without versions refuses `UNAVAILABLE`. */
|
|
381
|
+
rollback(options: DeploymentRollbackOptions): Promise<DeploymentRollbackOutcome>;
|
|
382
|
+
}
|
|
383
|
+
//# sourceMappingURL=deployment-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-provider.d.ts","sourceRoot":"","sources":["../../src/schemas/deployment-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contracts of the `infra/deployment-provider` kind: the capabilities a
|
|
3
|
+
* provider declares, and the implementation every provider registers to
|
|
4
|
+
* resolve its environment, render, check and release one app's deployment.
|
|
5
|
+
*
|
|
6
|
+
* The deploy driver (`vibes infra deploy run`) owns every provider-neutral
|
|
7
|
+
* step: the run ledger, readiness, the workspace build, pre-deploy commands,
|
|
8
|
+
* database migrations, the smoke probe and the deployment marker. It hands the
|
|
9
|
+
* provider those steps as {@link DeploymentReleaseHost} callbacks; the provider
|
|
10
|
+
* calls the ones its release uses, in its own order (Cloudflare migrates inside
|
|
11
|
+
* its staged config; a provider that builds remotely never calls `build`).
|
|
12
|
+
*/
|
|
13
|
+
import * as z from 'zod/v4';
|
|
14
|
+
import { RuntimeDescriptorSchema, ScopeConstraintSchema } from '@vibesdotdev/kernel';
|
|
15
|
+
import { JsonObjectSchema } from '@vibesdotdev/kernel/schemas/json';
|
|
16
|
+
import { appRuntimeSchema } from "../schemas.js";
|
|
17
|
+
import { EdgeHostnameTargetSchema } from "../kinds/edge-hostname.kind.js";
|
|
18
|
+
import { DeploymentBundleTargetSchema } from "../deployment-budget.js";
|
|
19
|
+
/** Provider-owned deployment capabilities, admitted by the host's plugin selection. */
|
|
20
|
+
export const DeploymentProviderDescriptorSchema = RuntimeDescriptorSchema.extend({
|
|
21
|
+
kind: z.literal('infra/deployment-provider'),
|
|
22
|
+
hardware: ScopeConstraintSchema.shape.hardware,
|
|
23
|
+
runtimes: z.array(appRuntimeSchema).min(1),
|
|
24
|
+
pty: z.boolean(),
|
|
25
|
+
/**
|
|
26
|
+
* Environment keys a deployment module reads while rendering (metadata
|
|
27
|
+
* identifiers such as an account id, never secret values). A fresh
|
|
28
|
+
* evaluation receives exactly these keys of the provider environment.
|
|
29
|
+
*/
|
|
30
|
+
projectionKeys: z.array(z.string().regex(/^[_A-Z0-9]+$/)).default([]),
|
|
31
|
+
/**
|
|
32
|
+
* The module export that renders this provider's deployment modules, as a
|
|
33
|
+
* specifier a fresh process can import (`DeploymentModuleRenderer`). Absent
|
|
34
|
+
* when the provider's deployment modules render no provider artifact.
|
|
35
|
+
*/
|
|
36
|
+
renderer: z.object({ module: z.string().min(1), export: z.string().min(1) }).optional(),
|
|
37
|
+
/**
|
|
38
|
+
* Deployment-module fields only this provider consumes. An app declaring
|
|
39
|
+
* another provider's fields is reported by readiness.
|
|
40
|
+
*/
|
|
41
|
+
declarations: z.array(z.string().min(1)).default([]),
|
|
42
|
+
/** The vendor deployment records attribute this provider's releases to (`cloudflare`, `digitalocean`, ...). */
|
|
43
|
+
vendor: z.string().min(1).optional(),
|
|
44
|
+
/**
|
|
45
|
+
* What this provider's Worker bundle is: the scopes it serves, how its bundler resolves, the
|
|
46
|
+
* built-in modules it supplies and its hard upload limits. The deploy refuses a Worker graph
|
|
47
|
+
* that reaches a module outside it, before upload. Absent, only the app's forbidden list applies.
|
|
48
|
+
*/
|
|
49
|
+
bundle: DeploymentBundleTargetSchema.optional()
|
|
50
|
+
});
|
|
51
|
+
/** The environment variables a provider's tooling and the app's render run under. */
|
|
52
|
+
export const DeploymentProviderEnvironmentSchema = z.object({
|
|
53
|
+
variables: z.record(z.string(), z.string()),
|
|
54
|
+
/** Whether the app's deployment module renders differently under `variables`, so readiness re-renders under them. */
|
|
55
|
+
projected: z.boolean()
|
|
56
|
+
});
|
|
57
|
+
export const DeploymentProviderEnvironmentRequestSchema = z.object({
|
|
58
|
+
/**
|
|
59
|
+
* The selected Vibes deployment environment (`production`, `staging`,
|
|
60
|
+
* `local`, ...); absent selects the runtime's current environment, as the
|
|
61
|
+
* provider's secrets resolution reads it.
|
|
62
|
+
*/
|
|
63
|
+
environment: z.string().min(1).optional(),
|
|
64
|
+
credentialSource: z.enum(['secrets-store', 'ambient']).default('secrets-store')
|
|
65
|
+
});
|
|
66
|
+
/**
|
|
67
|
+
* What a provider's renderer answers for one evaluated deployment module. The
|
|
68
|
+
* artifacts are serialized text so the answer crosses a process boundary.
|
|
69
|
+
*/
|
|
70
|
+
export const DeploymentModuleRenderSchema = z.object({
|
|
71
|
+
/** The module opts into a generated, committed provider artifact. */
|
|
72
|
+
managed: z.boolean(),
|
|
73
|
+
/** The module renders a provider artifact under an environment. */
|
|
74
|
+
renders: z.boolean(),
|
|
75
|
+
/** The provider artifact rendered under the evaluation's environment; null when the module renders none. */
|
|
76
|
+
rendered: z.string().nullable(),
|
|
77
|
+
/** The artifact local development reads, when the module renders one. */
|
|
78
|
+
localRendered: z.string().nullable(),
|
|
79
|
+
/** The provider's name for the deployed unit (e.g. a Worker name), when the module declares one. */
|
|
80
|
+
unitName: z.string().nullable()
|
|
81
|
+
});
|
|
82
|
+
export const DeploymentModuleValueSchema = z.lazy(() => z.union([
|
|
83
|
+
z.string(),
|
|
84
|
+
z.number(),
|
|
85
|
+
z.boolean(),
|
|
86
|
+
z.null(),
|
|
87
|
+
z.undefined(),
|
|
88
|
+
z.custom((value) => value instanceof Function),
|
|
89
|
+
z.array(DeploymentModuleValueSchema),
|
|
90
|
+
z.record(z.string(), DeploymentModuleValueSchema)
|
|
91
|
+
]));
|
|
92
|
+
/** An evaluated deployment module's default export, admitted by the loader before any renderer reads it. */
|
|
93
|
+
export const DeploymentModuleExportSchema = z.record(z.string(), DeploymentModuleValueSchema);
|
|
94
|
+
/** The provider-neutral data of one release, parsed at the driver's boundary. */
|
|
95
|
+
export const DeploymentReleaseRequestSchema = z.object({
|
|
96
|
+
appDir: z.string().min(1),
|
|
97
|
+
workspaceRoot: z.string().min(1),
|
|
98
|
+
/** The git repository that holds the app, when one does. */
|
|
99
|
+
repositoryRoot: z.string().min(1).optional(),
|
|
100
|
+
/** The selected Vibes deployment environment. */
|
|
101
|
+
environment: z.string().min(1),
|
|
102
|
+
/** The provider's own name for the selected environment block; null for its top level. */
|
|
103
|
+
providerEnvironment: z.string().nullable(),
|
|
104
|
+
dryRun: z.boolean(),
|
|
105
|
+
skipBuild: z.boolean(),
|
|
106
|
+
source: z.object({
|
|
107
|
+
commit: z.string().optional(),
|
|
108
|
+
branch: z.string().optional(),
|
|
109
|
+
/** Immutable parent/source/build-input identity for locally or remotely produced artifacts. */
|
|
110
|
+
compositionDigest: z.string().regex(/^[a-f0-9]{64}$/).optional()
|
|
111
|
+
}),
|
|
112
|
+
/** Provider-specific command options, read by the provider's own schema. */
|
|
113
|
+
options: JsonObjectSchema
|
|
114
|
+
});
|
|
115
|
+
/** Outputs prepared by the selected provider before the first final artifact seal. */
|
|
116
|
+
export const DeploymentArtifactPreparationSchema = z.object({
|
|
117
|
+
/** Additional owned files or directories, absolute or relative to the held workspace root. No source-write admission is granted. */
|
|
118
|
+
paths: z.array(z.string().min(1)).default([]),
|
|
119
|
+
/** Exact immutable references already validated by the owning producer, never mutable tags. */
|
|
120
|
+
references: z.array(z.string().min(1)).default([])
|
|
121
|
+
});
|
|
122
|
+
/** Evidence of the workspace build and its preflight. */
|
|
123
|
+
export const DeploymentBuildEvidenceSchema = z.object({
|
|
124
|
+
warnings: z.array(z.string()),
|
|
125
|
+
/** Present only after the complete app build has a validated immutable output receipt. */
|
|
126
|
+
artifact: z.object({
|
|
127
|
+
compositionDigest: z.string().regex(/^[a-f0-9]{64}$/),
|
|
128
|
+
sourceCommit: z.string().regex(/^[a-f0-9]{40,64}$/),
|
|
129
|
+
artifactDigest: z.string().regex(/^[a-f0-9]{64}$/),
|
|
130
|
+
/** Producer-verified immutable identities included in artifactDigest. */
|
|
131
|
+
references: z.array(z.string().min(1)).optional()
|
|
132
|
+
}).optional()
|
|
133
|
+
});
|
|
134
|
+
export const DeploymentReleaseResultSchema = z.object({
|
|
135
|
+
/** `dry-run` when nothing was released (a plan, a printed spec). */
|
|
136
|
+
status: z.enum(['released', 'dry-run']),
|
|
137
|
+
deployedUrl: z.string().optional(),
|
|
138
|
+
externalDeploymentId: z.string().optional(),
|
|
139
|
+
providerTraceRef: z.string().optional(),
|
|
140
|
+
/** Whether the driver probes the deployment's primary origin after this release. */
|
|
141
|
+
probe: z.boolean(),
|
|
142
|
+
notes: z.string().optional(),
|
|
143
|
+
/** The line the driver prints on success, when the release has one. */
|
|
144
|
+
summary: z.string().optional(),
|
|
145
|
+
/** Provider fields of the JSON result, placed after `provider`. */
|
|
146
|
+
result: JsonObjectSchema,
|
|
147
|
+
/**
|
|
148
|
+
* Where each declared hostname's DNS must point for this release to receive
|
|
149
|
+
* traffic. The driver points every hostname an edge fronts at its target.
|
|
150
|
+
*/
|
|
151
|
+
hostnameTargets: z.array(EdgeHostnameTargetSchema).default([])
|
|
152
|
+
});
|
|
153
|
+
/** One readiness finding. `fail` refuses a deploy; `warn` and `unknown` are reported. */
|
|
154
|
+
export const DeploymentReadinessCheckSchema = z.object({
|
|
155
|
+
id: z.string().min(1),
|
|
156
|
+
label: z.string().min(1),
|
|
157
|
+
status: z.enum(['pass', 'warn', 'fail', 'unknown']),
|
|
158
|
+
summary: z.string(),
|
|
159
|
+
evidence: z.array(z.string()),
|
|
160
|
+
action: z.string().nullable()
|
|
161
|
+
});
|
|
162
|
+
/**
|
|
163
|
+
* What a provider's artifact says about one selected environment: names only,
|
|
164
|
+
* never values. The driver judges routes and secrets against the deployment
|
|
165
|
+
* and the runtime's environment catalog from these facts.
|
|
166
|
+
*/
|
|
167
|
+
export const DeploymentEnvironmentFactsSchema = z.object({
|
|
168
|
+
/** The provider renders its own environment blocks, so the driver holds it to an explicit route policy. */
|
|
169
|
+
generated: z.boolean(),
|
|
170
|
+
/** The provider artifact the facts come from could be rendered. */
|
|
171
|
+
resolved: z.boolean(),
|
|
172
|
+
/** The provider's own name for the selected environment block; null for its top level. */
|
|
173
|
+
providerEnvironment: z.string().nullable(),
|
|
174
|
+
/** The selected environment has its own block in the artifact. */
|
|
175
|
+
explicitEnvironment: z.boolean(),
|
|
176
|
+
/** The selected block inherits the top-level routes instead of declaring its own. */
|
|
177
|
+
routesInherited: z.boolean(),
|
|
178
|
+
/** Route patterns the selected environment serves. */
|
|
179
|
+
routes: z.array(z.string()),
|
|
180
|
+
/** Secret names the selected environment binds to a store. */
|
|
181
|
+
boundSecrets: z.array(z.string()),
|
|
182
|
+
/** Secret names the artifact declares as required without binding them. */
|
|
183
|
+
declaredRequirements: z.array(z.string())
|
|
184
|
+
});
|
|
185
|
+
export const DeploymentArtifactResultSchema = z.object({
|
|
186
|
+
status: z.enum(['updated', 'unchanged', 'drift', 'skipped', 'error']),
|
|
187
|
+
/** The committed artifact's path. */
|
|
188
|
+
path: z.string().min(1),
|
|
189
|
+
unitName: z.string().optional(),
|
|
190
|
+
/** Why the artifact was skipped or refused. */
|
|
191
|
+
reason: z.string().optional(),
|
|
192
|
+
/** A unified diff snippet on drift. */
|
|
193
|
+
diff: z.string().optional(),
|
|
194
|
+
/** A value-free note about what shaped the render. */
|
|
195
|
+
note: z.string().optional()
|
|
196
|
+
});
|
|
197
|
+
export const DeploymentRollbackOutcomeSchema = z.object({
|
|
198
|
+
/** The provider's name for the deployed unit. */
|
|
199
|
+
unit: z.string().min(1),
|
|
200
|
+
/** Parts of the unit a rollback leaves at their current version (for example a container image). */
|
|
201
|
+
retained: z.array(z.string().min(1)),
|
|
202
|
+
/** Versions serving before the rollback, with their traffic share. */
|
|
203
|
+
serving: z.array(z.object({ versionId: z.string(), percentage: z.number() })),
|
|
204
|
+
versions: z.array(z.object({ id: z.string(), createdOn: z.string().optional(), message: z.string().optional() })),
|
|
205
|
+
target: z.string().optional(),
|
|
206
|
+
/** The provider command the rollback runs (or would run, on a dry run). */
|
|
207
|
+
command: z.array(z.string()).optional(),
|
|
208
|
+
dryRun: z.boolean(),
|
|
209
|
+
rolledBack: z.boolean()
|
|
210
|
+
});
|
|
211
|
+
//# sourceMappingURL=deployment-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-provider.js","sourceRoot":"","sources":["../../src/schemas/deployment-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
export declare const WorkerLogRequestSchema: z.ZodObject<{
|
|
3
|
+
namespace: z.ZodString;
|
|
4
|
+
kubeconfig: z.ZodOptional<z.ZodString>;
|
|
5
|
+
resource: z.ZodString;
|
|
6
|
+
tail: z.ZodOptional<z.ZodNumber>;
|
|
7
|
+
since: z.ZodOptional<z.ZodString>;
|
|
8
|
+
container: z.ZodOptional<z.ZodString>;
|
|
9
|
+
timestamps: z.ZodOptional<z.ZodBoolean>;
|
|
10
|
+
previous: z.ZodOptional<z.ZodBoolean>;
|
|
11
|
+
follow: z.ZodOptional<z.ZodBoolean>;
|
|
12
|
+
signal: z.ZodOptional<z.ZodInstanceOf<AbortSignal>>;
|
|
13
|
+
}, z.core.$strip>;
|
|
14
|
+
export type WorkerLogRequest = z.infer<typeof WorkerLogRequestSchema>;
|
|
15
|
+
/**
|
|
16
|
+
* Provider-owned active operation. Completion settles only after provider resources
|
|
17
|
+
* are released: resolves on EOF or requested cancellation, rejects on failure.
|
|
18
|
+
* cancel is idempotent, works while output is locked, and awaits cleanup.
|
|
19
|
+
* The provider must also honor request.signal and output consumer cancellation.
|
|
20
|
+
*/
|
|
21
|
+
export declare const ActiveLogStreamSchema: z.ZodObject<{
|
|
22
|
+
output: z.ZodInstanceOf<ReadableStream<Uint8Array<ArrayBufferLike>>>;
|
|
23
|
+
completion: z.ZodInstanceOf<Promise<void>>;
|
|
24
|
+
cancel: z.ZodFunction<z.ZodTuple<readonly [z.ZodOptional<z.ZodUnknown>], null>, z.ZodPromise<z.ZodVoid>>;
|
|
25
|
+
}, z.core.$strip>;
|
|
26
|
+
export type ActiveLogStream = z.infer<typeof ActiveLogStreamSchema>;
|
|
27
|
+
//# sourceMappingURL=log-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-stream.d.ts","sourceRoot":"","sources":["../../src/schemas/log-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAK3B,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAcjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;iBAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|