@cat-factory/integrations 0.42.1 → 0.44.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.
Files changed (33) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/modules/environments/EnvironmentConnectionService.d.ts +4 -3
  6. package/dist/modules/environments/EnvironmentConnectionService.d.ts.map +1 -1
  7. package/dist/modules/environments/EnvironmentConnectionService.js +30 -81
  8. package/dist/modules/environments/EnvironmentConnectionService.js.map +1 -1
  9. package/dist/modules/environments/EnvironmentProvisioningService.d.ts +23 -1
  10. package/dist/modules/environments/EnvironmentProvisioningService.d.ts.map +1 -1
  11. package/dist/modules/environments/EnvironmentProvisioningService.js +28 -8
  12. package/dist/modules/environments/EnvironmentProvisioningService.js.map +1 -1
  13. package/dist/modules/environments/EnvironmentUserHandlerService.d.ts +45 -0
  14. package/dist/modules/environments/EnvironmentUserHandlerService.d.ts.map +1 -0
  15. package/dist/modules/environments/EnvironmentUserHandlerService.js +125 -0
  16. package/dist/modules/environments/EnvironmentUserHandlerService.js.map +1 -0
  17. package/dist/modules/environments/infra-handler-build.d.ts +73 -0
  18. package/dist/modules/environments/infra-handler-build.d.ts.map +1 -0
  19. package/dist/modules/environments/infra-handler-build.js +124 -0
  20. package/dist/modules/environments/infra-handler-build.js.map +1 -0
  21. package/dist/modules/kubernetes/KubernetesEnvironmentProvider.d.ts +38 -6
  22. package/dist/modules/kubernetes/KubernetesEnvironmentProvider.d.ts.map +1 -1
  23. package/dist/modules/kubernetes/KubernetesEnvironmentProvider.js +118 -7
  24. package/dist/modules/kubernetes/KubernetesEnvironmentProvider.js.map +1 -1
  25. package/dist/modules/kubernetes/kubernetes-deploy.logic.d.ts +128 -0
  26. package/dist/modules/kubernetes/kubernetes-deploy.logic.d.ts.map +1 -0
  27. package/dist/modules/kubernetes/kubernetes-deploy.logic.js +201 -0
  28. package/dist/modules/kubernetes/kubernetes-deploy.logic.js.map +1 -0
  29. package/dist/modules/kubernetes/kubernetes-environment.logic.d.ts +17 -2
  30. package/dist/modules/kubernetes/kubernetes-environment.logic.d.ts.map +1 -1
  31. package/dist/modules/kubernetes/kubernetes-environment.logic.js +41 -0
  32. package/dist/modules/kubernetes/kubernetes-environment.logic.js.map +1 -1
  33. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"EnvironmentProvisioningService.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentProvisioningService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnvironmentProvisioningService.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentProvisioningService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { Clock } from '@cat-factory/kernel';
2
+ import type { EnvironmentConnectionRecord, EnvironmentUserHandlerRepository, ProvisionType, SecretCipher, UrlSafetyPolicy } from '@cat-factory/kernel';
3
+ import type { EnvironmentBackendRegistry } from './environment-backends.js';
4
+ import type { EnvironmentHandlerView, RegisterHandlerInput } from './EnvironmentConnectionService.js';
5
+ export interface EnvironmentUserHandlerServiceDependencies {
6
+ userHandlerRepository: EnvironmentUserHandlerRepository;
7
+ /** Resolves a stored backend `kind` / engine to the provider that validates + builds it. */
8
+ environmentBackendRegistry: EnvironmentBackendRegistry;
9
+ secretCipher: SecretCipher;
10
+ clock: Clock;
11
+ /** URL/host safety policy applied to a registered handler. Defaults to strict. */
12
+ urlPolicy?: UrlSafetyPolicy;
13
+ /** Whether this runtime can honor custom TLS material (a private CA / insecure-skip). */
14
+ customTlsSupported?: boolean;
15
+ /** Optional structural logger for best-effort diagnostics (e.g. a dropped override). */
16
+ logger?: {
17
+ info(obj: Record<string, unknown>, msg?: string): void;
18
+ };
19
+ }
20
+ export declare class EnvironmentUserHandlerService {
21
+ private readonly deps;
22
+ constructor(deps: EnvironmentUserHandlerServiceDependencies);
23
+ /** Every override the user has set for a workspace, sans secret values (batched). */
24
+ list(userId: string, workspaceId: string): Promise<EnvironmentHandlerView[]>;
25
+ /** Register (or replace) the user's override for one provision type (+ optional custom id). */
26
+ upsert(userId: string, workspaceId: string, input: RegisterHandlerInput): Promise<EnvironmentHandlerView>;
27
+ /** Remove one override. */
28
+ remove(userId: string, workspaceId: string, provisionType: ProvisionType, manifestId: string | null): Promise<void>;
29
+ /**
30
+ * The user's overrides as connection records the resolver layers over the workspace
31
+ * handlers (the `resolveUserHandlerOverrides` seam the provisioning service consumes). The
32
+ * per-user table carries no `backendKind` column (it's local-only, where each engine maps
33
+ * 1:1 to a backend), so it's re-derived from the engine here. `upsert` already rejects an
34
+ * override whose engine has no registered backend, so the drop below only fires if the
35
+ * backend registry changed shape after the override was stored; it's logged (not silent) so
36
+ * a fallen-back-to-workspace-handler override is observable rather than a mystery.
37
+ */
38
+ resolveOverrides(userId: string, workspaceId: string): Promise<EnvironmentConnectionRecord[]>;
39
+ /** The registered backend kind for an engine, or null when none is registered. */
40
+ private backendKindFor;
41
+ /** Secret key NAMES an override requires, derived from its non-secret config (no decrypt). */
42
+ private referencedSecretKeyNames;
43
+ private toView;
44
+ }
45
+ //# sourceMappingURL=EnvironmentUserHandlerService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentUserHandlerService.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentUserHandlerService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EACV,2BAA2B,EAE3B,gCAAgC,EAGhC,aAAa,EACb,YAAY,EACZ,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,mCAAmC,CAAA;AAiB1C,MAAM,WAAW,yCAAyC;IACxD,qBAAqB,EAAE,gCAAgC,CAAA;IACvD,4FAA4F;IAC5F,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,YAAY,EAAE,YAAY,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,kFAAkF;IAClF,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,wFAAwF;IACxF,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;CACpE;AAED,qBAAa,6BAA6B;IAC5B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,yCAAyC,EAAI;IAEhF,qFAAqF;IAC/E,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAKjF;IAED,+FAA+F;IACzF,MAAM,CACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,sBAAsB,CAAC,CA6BjC;IAED,2BAA2B;IACrB,MAAM,CACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,IAAI,CAAC,CAEf;IAED;;;;;;;;OAQG;IACG,gBAAgB,CACpB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,2BAA2B,EAAE,CAAC,CA6BxC;IAED,kFAAkF;IAClF,OAAO,CAAC,cAAc;IAQtB,8FAA8F;IAC9F,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,MAAM;CAuBf"}
@@ -0,0 +1,125 @@
1
+ import { buildInfraHandlerFields, handlerConfigToBackendConfig, resolveHandlerBackend, } from './infra-handler-build.js';
2
+ export class EnvironmentUserHandlerService {
3
+ deps;
4
+ constructor(deps) {
5
+ this.deps = deps;
6
+ }
7
+ /** Every override the user has set for a workspace, sans secret values (batched). */
8
+ async list(userId, workspaceId) {
9
+ const records = await this.deps.userHandlerRepository.listByUserWorkspace(userId, workspaceId);
10
+ // Secret-key NAMES are derived from the (non-secret) config — upsert guarantees every
11
+ // referenced key is present — so listing needs no per-record decrypt.
12
+ return records.map((record) => this.toView(record, this.referencedSecretKeyNames(record)));
13
+ }
14
+ /** Register (or replace) the user's override for one provision type (+ optional custom id). */
15
+ async upsert(userId, workspaceId, input) {
16
+ const fields = buildInfraHandlerFields(this.deps.environmentBackendRegistry, input, {
17
+ ...(this.deps.urlPolicy ? { urlPolicy: this.deps.urlPolicy } : {}),
18
+ ...(this.deps.customTlsSupported !== undefined
19
+ ? { customTlsSupported: this.deps.customTlsSupported }
20
+ : {}),
21
+ });
22
+ const existing = (await this.deps.userHandlerRepository.listByUserWorkspace(userId, workspaceId)).find((h) => h.provisionType === fields.provisionType && h.manifestId === fields.manifestId);
23
+ const secretsCipher = await this.deps.secretCipher.encrypt(JSON.stringify(input.secrets));
24
+ const now = this.deps.clock.now();
25
+ const record = {
26
+ userId,
27
+ workspaceId,
28
+ provisionType: fields.provisionType,
29
+ manifestId: fields.manifestId,
30
+ engine: fields.engine,
31
+ providerId: fields.providerId,
32
+ label: fields.label,
33
+ baseUrl: fields.baseUrl,
34
+ handlerJson: fields.handlerJson,
35
+ acceptsManifestId: fields.acceptsManifestId,
36
+ secretsCipher,
37
+ createdAt: existing?.createdAt ?? now,
38
+ updatedAt: now,
39
+ };
40
+ await this.deps.userHandlerRepository.upsert(record);
41
+ return this.toView(record, Object.keys(input.secrets));
42
+ }
43
+ /** Remove one override. */
44
+ async remove(userId, workspaceId, provisionType, manifestId) {
45
+ await this.deps.userHandlerRepository.remove(userId, workspaceId, provisionType, manifestId);
46
+ }
47
+ /**
48
+ * The user's overrides as connection records the resolver layers over the workspace
49
+ * handlers (the `resolveUserHandlerOverrides` seam the provisioning service consumes). The
50
+ * per-user table carries no `backendKind` column (it's local-only, where each engine maps
51
+ * 1:1 to a backend), so it's re-derived from the engine here. `upsert` already rejects an
52
+ * override whose engine has no registered backend, so the drop below only fires if the
53
+ * backend registry changed shape after the override was stored; it's logged (not silent) so
54
+ * a fallen-back-to-workspace-handler override is observable rather than a mystery.
55
+ */
56
+ async resolveOverrides(userId, workspaceId) {
57
+ const records = await this.deps.userHandlerRepository.listByUserWorkspace(userId, workspaceId);
58
+ const out = [];
59
+ for (const record of records) {
60
+ const backendKind = this.backendKindFor(record.engine);
61
+ if (!backendKind) {
62
+ this.deps.logger?.info({ userId, workspaceId, provisionType: record.provisionType, engine: record.engine }, 'Dropping per-user environment handler override: no backend registered for its engine');
63
+ continue;
64
+ }
65
+ out.push({
66
+ workspaceId,
67
+ provisionType: record.provisionType,
68
+ manifestId: record.manifestId,
69
+ engine: record.engine,
70
+ backendKind,
71
+ providerId: record.providerId,
72
+ label: record.label,
73
+ baseUrl: record.baseUrl,
74
+ handlerJson: record.handlerJson,
75
+ acceptsManifestId: record.acceptsManifestId,
76
+ secretsCipher: record.secretsCipher,
77
+ createdAt: record.createdAt,
78
+ deletedAt: null,
79
+ });
80
+ }
81
+ return out;
82
+ }
83
+ /** The registered backend kind for an engine, or null when none is registered. */
84
+ backendKindFor(engine) {
85
+ try {
86
+ return resolveHandlerBackend(this.deps.environmentBackendRegistry, engine, undefined).kind;
87
+ }
88
+ catch {
89
+ return null;
90
+ }
91
+ }
92
+ /** Secret key NAMES an override requires, derived from its non-secret config (no decrypt). */
93
+ referencedSecretKeyNames(record) {
94
+ try {
95
+ const config = JSON.parse(record.handlerJson);
96
+ const backend = resolveHandlerBackend(this.deps.environmentBackendRegistry, record.engine, undefined);
97
+ return backend.referencedSecretKeys(handlerConfigToBackendConfig(config, backend.kind));
98
+ }
99
+ catch {
100
+ return [];
101
+ }
102
+ }
103
+ toView(record, secretKeys) {
104
+ let config;
105
+ try {
106
+ config = JSON.parse(record.handlerJson);
107
+ }
108
+ catch {
109
+ config = undefined;
110
+ }
111
+ return {
112
+ provisionType: record.provisionType,
113
+ manifestId: record.manifestId,
114
+ engine: record.engine,
115
+ providerId: record.providerId,
116
+ label: record.label,
117
+ baseUrl: record.baseUrl,
118
+ connectedAt: record.createdAt,
119
+ secretKeys,
120
+ acceptsManifestId: record.acceptsManifestId,
121
+ ...(config ? { config } : {}),
122
+ };
123
+ }
124
+ }
125
+ //# sourceMappingURL=EnvironmentUserHandlerService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentUserHandlerService.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentUserHandlerService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import type { EnvironmentBackendConfig, InfraEngine, InfraHandlerConfig, KubernetesManifestSource, ProvisionType, ServiceProvisioning, UrlSafetyPolicy } from '@cat-factory/kernel';
2
+ import type { EnvironmentBackendProvider, EnvironmentBackendRegistry } from './environment-backends.js';
3
+ /**
4
+ * A placeholder manifest source for config validation / metadata extraction, where the
5
+ * real (service-owned) source isn't available. The kube backend's `assertConfigSafe` /
6
+ * `connectionMeta` only read the apiserver/sizing fields, never the source, so a stand-in
7
+ * is safe — the REAL source is merged in at provision time (`resolveProviderForType`).
8
+ */
9
+ export declare const PLACEHOLDER_MANIFEST_SOURCE: KubernetesManifestSource;
10
+ /**
11
+ * Coerce an env-manifest `providerId` (regex `^[a-z0-9-]+$`, so a leading `-` is allowed) into a
12
+ * valid `manifestId` (`^[a-z0-9][a-z0-9-]*$`) for the compat bridge's `acceptsManifestId`: strip
13
+ * leading non-alphanumerics, cap to 64, and fall back to `custom` if nothing usable remains.
14
+ */
15
+ export declare function toManifestId(providerId: string): string;
16
+ /**
17
+ * The service-owned kube provisioning inputs ("what + where" + render inputs) merged into the
18
+ * workspace engine config at provision time: the manifest source plus the container-deploy
19
+ * render fields (image overrides, per-environment helm releases, secret injections).
20
+ */
21
+ export type ServiceKubeInputs = Pick<ServiceProvisioning, 'manifestSource' | 'images' | 'helmReleases' | 'secretInjections'>;
22
+ /**
23
+ * Lower a discriminated-by-`engine` {@link InfraHandlerConfig} into the discriminated-by-`kind`
24
+ * {@link EnvironmentBackendConfig} the backend registry consumes. For a kube engine the source
25
+ * is resolved by precedence: the service-owned `manifestSource` (the split the whole initiative
26
+ * is about) > a legacy source the compat bridge stored inline (a kube handler config MAY carry
27
+ * one) > a placeholder (validation/metadata paths, where the kube backend reads only the
28
+ * apiserver/sizing fields, never the source). The service's render inputs (image overrides,
29
+ * secret injections, per-env helm releases) are folded in too; the workspace's shared
30
+ * (`scope: 'shared'`) helm releases on the engine config are merged with the service's by
31
+ * release name (a same-named service release overrides the engine one — no double install).
32
+ */
33
+ export declare function handlerConfigToBackendConfig(config: InfraHandlerConfig, backendKind: string, service?: ServiceKubeInputs): EnvironmentBackendConfig;
34
+ /** Resolve the backend that builds a handler's provider: the pinned kind, else by engine. */
35
+ export declare function resolveHandlerBackend(registry: EnvironmentBackendRegistry, engine: InfraEngine, backendKind: string | undefined): EnvironmentBackendProvider;
36
+ /** The validated, persistence-ready non-secret fields of a per-type infra handler. */
37
+ export interface InfraHandlerPersistedFields {
38
+ provisionType: ProvisionType;
39
+ manifestId: string | null;
40
+ engine: InfraEngine;
41
+ backendKind: string;
42
+ providerId: string;
43
+ label: string;
44
+ baseUrl: string;
45
+ /** The serialized {@link InfraHandlerConfig} (sans secrets). */
46
+ handlerJson: string;
47
+ acceptsManifestId: string | null;
48
+ }
49
+ /** Register/upsert input shared by both the workspace and per-user handler stores. */
50
+ export interface BuildInfraHandlerInput {
51
+ provisionType: ProvisionType;
52
+ /** For a `custom` type keyed to a specific manifest id; absent ⇒ the bare (single) handler. */
53
+ manifestId?: string | null;
54
+ config: InfraHandlerConfig;
55
+ /**
56
+ * The env-backend registry kind that builds the provider. Absent ⇒ resolved from the
57
+ * config's engine (the generic backend for that engine). Pin it to select a specific
58
+ * custom backend that rides a shared engine (e.g. `remote-custom`).
59
+ */
60
+ backendKind?: string;
61
+ secrets: Record<string, string>;
62
+ }
63
+ /**
64
+ * Validate a handler config (lower it, SSRF/runtime-safety check it, verify every referenced
65
+ * secret key is supplied) and derive its persisted non-secret fields. Throws a
66
+ * {@link ValidationError} on an unsafe config or a missing secret value. The caller encrypts
67
+ * the secret bundle and assembles the (store-specific) record around these fields.
68
+ */
69
+ export declare function buildInfraHandlerFields(registry: EnvironmentBackendRegistry, input: BuildInfraHandlerInput, opts?: {
70
+ urlPolicy?: UrlSafetyPolicy;
71
+ customTlsSupported?: boolean;
72
+ }): InfraHandlerPersistedFields;
73
+ //# sourceMappingURL=infra-handler-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infra-handler-build.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/infra-handler-build.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EACV,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,2BAA2B,CAAA;AASlC;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAGzC,CAAA;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,mBAAmB,EACnB,gBAAgB,GAAG,QAAQ,GAAG,cAAc,GAAG,kBAAkB,CAClE,CAAA;AAoBD;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,wBAAwB,CAwB1B;AAED,6FAA6F;AAC7F,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,0BAA0B,EACpC,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,0BAA0B,CAU5B;AAED,sFAAsF;AACtF,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,aAAa,CAAA;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,MAAM,EAAE,WAAW,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,sFAAsF;AACtF,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,aAAa,CAAA;IAC5B,+FAA+F;IAC/F,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,MAAM,EAAE,kBAAkB,CAAA;IAC1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,0BAA0B,EACpC,KAAK,EAAE,sBAAsB,EAC7B,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,eAAe,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAO,GACvE,2BAA2B,CA8B7B"}
@@ -0,0 +1,124 @@
1
+ import { ValidationError } from '@cat-factory/kernel';
2
+ // Shared lowering + validation for a per-type infra HANDLER row (the "how"), used by BOTH
3
+ // the per-workspace handler store (`EnvironmentConnectionService`) and the per-USER override
4
+ // store (`EnvironmentUserHandlerService`). Keeping the engine→backend lowering, the SSRF /
5
+ // secret-completeness checks, and the persisted-metadata derivation in one place stops the
6
+ // two stores from drifting on what a valid handler is. See
7
+ // docs/initiatives/per-service-provision-types.md.
8
+ /**
9
+ * A placeholder manifest source for config validation / metadata extraction, where the
10
+ * real (service-owned) source isn't available. The kube backend's `assertConfigSafe` /
11
+ * `connectionMeta` only read the apiserver/sizing fields, never the source, so a stand-in
12
+ * is safe — the REAL source is merged in at provision time (`resolveProviderForType`).
13
+ */
14
+ export const PLACEHOLDER_MANIFEST_SOURCE = {
15
+ type: 'colocated',
16
+ path: '.',
17
+ };
18
+ /**
19
+ * Coerce an env-manifest `providerId` (regex `^[a-z0-9-]+$`, so a leading `-` is allowed) into a
20
+ * valid `manifestId` (`^[a-z0-9][a-z0-9-]*$`) for the compat bridge's `acceptsManifestId`: strip
21
+ * leading non-alphanumerics, cap to 64, and fall back to `custom` if nothing usable remains.
22
+ */
23
+ export function toManifestId(providerId) {
24
+ const id = providerId.replace(/^[^a-z0-9]+/, '').slice(0, 64);
25
+ return id.length > 0 ? id : 'custom';
26
+ }
27
+ /**
28
+ * Merge the workspace engine's (cluster-shared) helm releases with the service's
29
+ * (per-environment) ones, keyed by release `name` so a service entry OVERRIDES a same-named
30
+ * engine entry instead of installing the release twice. Engine order is preserved; service-only
31
+ * releases are appended.
32
+ */
33
+ function mergeHelmReleases(engine, service) {
34
+ const byName = new Map();
35
+ for (const rel of engine ?? [])
36
+ byName.set(rel.name, rel);
37
+ for (const rel of service ?? [])
38
+ byName.set(rel.name, rel);
39
+ return [...byName.values()];
40
+ }
41
+ /**
42
+ * Lower a discriminated-by-`engine` {@link InfraHandlerConfig} into the discriminated-by-`kind`
43
+ * {@link EnvironmentBackendConfig} the backend registry consumes. For a kube engine the source
44
+ * is resolved by precedence: the service-owned `manifestSource` (the split the whole initiative
45
+ * is about) > a legacy source the compat bridge stored inline (a kube handler config MAY carry
46
+ * one) > a placeholder (validation/metadata paths, where the kube backend reads only the
47
+ * apiserver/sizing fields, never the source). The service's render inputs (image overrides,
48
+ * secret injections, per-env helm releases) are folded in too; the workspace's shared
49
+ * (`scope: 'shared'`) helm releases on the engine config are merged with the service's by
50
+ * release name (a same-named service release overrides the engine one — no double install).
51
+ */
52
+ export function handlerConfigToBackendConfig(config, backendKind, service) {
53
+ switch (config.engine) {
54
+ case 'local-docker':
55
+ case 'remote-custom':
56
+ return { kind: backendKind, manifest: config.manifest };
57
+ case 'local-k3s':
58
+ case 'remote-kubernetes': {
59
+ const kube = config.kubernetes;
60
+ const source = service?.manifestSource ?? kube.manifestSource ?? PLACEHOLDER_MANIFEST_SOURCE;
61
+ const helmReleases = mergeHelmReleases(kube.helmReleases, service?.helmReleases);
62
+ return {
63
+ kind: 'kubernetes',
64
+ kubernetes: {
65
+ ...kube,
66
+ manifestSource: source,
67
+ ...(helmReleases.length > 0 ? { helmReleases } : {}),
68
+ ...(service?.images ? { images: service.images } : {}),
69
+ ...(service?.secretInjections ? { secretInjections: service.secretInjections } : {}),
70
+ },
71
+ };
72
+ }
73
+ }
74
+ }
75
+ /** Resolve the backend that builds a handler's provider: the pinned kind, else by engine. */
76
+ export function resolveHandlerBackend(registry, engine, backendKind) {
77
+ if (backendKind) {
78
+ const backend = registry.get(backendKind);
79
+ if (!backend)
80
+ throw new ValidationError(`Unknown environment backend kind '${backendKind}'`);
81
+ return backend;
82
+ }
83
+ const backend = registry.byEngine(engine);
84
+ if (!backend)
85
+ throw new ValidationError(`No environment backend is configured for engine '${engine}'`);
86
+ return backend;
87
+ }
88
+ /**
89
+ * Validate a handler config (lower it, SSRF/runtime-safety check it, verify every referenced
90
+ * secret key is supplied) and derive its persisted non-secret fields. Throws a
91
+ * {@link ValidationError} on an unsafe config or a missing secret value. The caller encrypts
92
+ * the secret bundle and assembles the (store-specific) record around these fields.
93
+ */
94
+ export function buildInfraHandlerFields(registry, input, opts = {}) {
95
+ const engine = input.config.engine;
96
+ const backend = resolveHandlerBackend(registry, engine, input.backendKind);
97
+ // Validation/metadata only read the apiserver/sizing fields, so the placeholder source is fine.
98
+ const backendConfig = handlerConfigToBackendConfig(input.config, backend.kind);
99
+ backend.assertConfigSafe(backendConfig, {
100
+ ...(opts.urlPolicy ? { urlPolicy: opts.urlPolicy } : {}),
101
+ ...(opts.customTlsSupported !== undefined
102
+ ? { customTlsSupported: opts.customTlsSupported }
103
+ : {}),
104
+ });
105
+ const missing = backend
106
+ .referencedSecretKeys(backendConfig)
107
+ .filter((key) => !(key in input.secrets));
108
+ if (missing.length) {
109
+ throw new ValidationError(`Missing secret values for: ${missing.join(', ')}`);
110
+ }
111
+ const meta = backend.connectionMeta(backendConfig);
112
+ return {
113
+ provisionType: input.provisionType,
114
+ manifestId: input.manifestId ?? null,
115
+ engine,
116
+ backendKind: backend.kind,
117
+ providerId: meta.providerId,
118
+ label: meta.label,
119
+ baseUrl: meta.baseUrl,
120
+ handlerJson: JSON.stringify(input.config),
121
+ acceptsManifestId: input.config.engine === 'remote-custom' ? input.config.acceptsManifestId : null,
122
+ };
123
+ }
124
+ //# sourceMappingURL=infra-handler-build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infra-handler-build.js","sourceRoot":"","sources":["../../../src/modules/environments/infra-handler-build.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ConnectionTestResult, EnvironmentConnectionTestRequest, EnvironmentProvider, EnvironmentStatus, EnvironmentStatusRequest, EnvironmentTeardownRequest, ProviderConfigField, ProvisionEnvironmentRequest, ProvisionedEnvironment } from '@cat-factory/kernel';
1
+ import type { AsyncProvisionCapability, ConnectionTestResult, EnvironmentConnectionTestRequest, EnvironmentProvider, EnvironmentStatus, EnvironmentStatusRequest, EnvironmentTeardownRequest, ProviderConfigField, ProvisionEnvironmentRequest, ProvisionedEnvironment } from '@cat-factory/kernel';
2
2
  export interface KubernetesEnvironmentProviderOptions {
3
3
  /** Reserved for future URL-policy-aware behaviour; unused today. */
4
4
  urlPolicy?: unknown;
@@ -6,6 +6,12 @@ export interface KubernetesEnvironmentProviderOptions {
6
6
  export declare class KubernetesEnvironmentProvider implements EnvironmentProvider {
7
7
  private readonly options;
8
8
  constructor(options?: KubernetesEnvironmentProviderOptions);
9
+ /**
10
+ * Asynchronous, container-backed provisioning for configs the in-Worker REST path can't
11
+ * render (`kustomize`, helm releases, structured image overrides, secret injections). The
12
+ * provider builds the deploy job + maps its outcome; the engine dispatches/polls it.
13
+ */
14
+ readonly asyncProvision: AsyncProvisionCapability;
9
15
  provision(req: ProvisionEnvironmentRequest): Promise<ProvisionedEnvironment>;
10
16
  status(req: EnvironmentStatusRequest): Promise<ProvisionedEnvironment>;
11
17
  teardown(req: EnvironmentTeardownRequest): Promise<{
@@ -13,18 +19,44 @@ export declare class KubernetesEnvironmentProvider implements EnvironmentProvide
13
19
  }>;
14
20
  testConnection(req: EnvironmentConnectionTestRequest): Promise<ConnectionTestResult>;
15
21
  describeConfig(): ProviderConfigField[];
22
+ /**
23
+ * Build a deploy-container job for a config that needs rendering, or null to use the
24
+ * synchronous REST `provision()` path (raw manifests, no helm/images/secret-injections).
25
+ * Throws when rendering is required but the engine supplied no deploy inputs (a wiring bug).
26
+ */
27
+ private buildProvisionJob;
28
+ /** Map a finished deploy job's view into a provisioned environment. */
29
+ private finalizeProvision;
30
+ /** The `{{var}}` substitution map for templates (inputs + namespace + optional image). */
31
+ private provisionVars;
16
32
  private ensureNamespace;
17
33
  private apply;
18
34
  /** Aggregate the namespace's Deployments into one lifecycle verdict. */
19
35
  private deploymentStatus;
20
- /** Resolve the live URL, reading the LoadBalancer address for status-backed sources. */
36
+ /** Resolve the live URL, reading the status host/address for status-backed sources. */
21
37
  private resolveLiveUrl;
22
38
  /**
23
- * Read the LoadBalancer address backing a status source: the named Service/Ingress, or
24
- * — when `ingressStatus` omits the name — the single Ingress applied in the namespace
25
- * (the schema/UI documents "absent the only Ingress applied"). Null until assigned.
39
+ * Read the host/address backing a status source: the LoadBalancer address of the named
40
+ * Service/Ingress (or — when `ingressStatus` omits the name — the single Ingress applied
41
+ * in the namespace), or the Gateway-API host for `gatewayStatus`/`httpRouteStatus`. Null
42
+ * until assigned. NOTE: a Gateway/HTTPRoute that DECLARES a concrete hostname resolves
43
+ * immediately (the host is the intended URL), which can precede the address actually being
44
+ * programmed — readiness is driven by the Deployments' rollout, not by this URL.
45
+ */
46
+ private readStatusHost;
47
+ /**
48
+ * Resolve a `gatewayStatus` host: a named `Gateway` (else the only one in the namespace),
49
+ * preferring a concrete listener hostname over the raw assigned address. Null until assigned.
50
+ */
51
+ private readGatewayHost;
52
+ /**
53
+ * Resolve an `httpRouteStatus` host: a named `HTTPRoute` (else the only one), preferring its
54
+ * own concrete hostname; otherwise the parent `Gateway`'s assigned address (read in the
55
+ * parentRef's namespace, since a shared gateway commonly lives elsewhere). Null until assigned.
26
56
  */
27
- private readLoadBalancerAddress;
57
+ private readHttpRouteHost;
58
+ /** GET a `Gateway` by name, or the first one in the namespace when `name` is omitted. */
59
+ private getGateway;
28
60
  /** Read the manifest file(s) from the configured source (co-located or separate repo). */
29
61
  private readManifests;
30
62
  /** Read a single manifest file, or every manifest file in a directory. */
@@ -1 +1 @@
1
- {"version":3,"file":"KubernetesEnvironmentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/kubernetes/KubernetesEnvironmentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,gCAAgC,EAChC,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAE1B,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EAGvB,MAAM,qBAAqB,CAAA;AA+B5B,MAAM,WAAW,oCAAoC;IACnD,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,6BAA8B,YAAW,mBAAmB;IAE3D,OAAO,CAAC,QAAQ,CAAC,OAAO;IAApC,YAA6B,OAAO,GAAE,oCAAyC,EAAI;IAE7E,SAAS,CAAC,GAAG,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAqCjF;IAEK,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwB3E;IAEK,QAAQ,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC,CAkBtF;IAEK,cAAc,CAAC,GAAG,EAAE,gCAAgC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAqBzF;IAED,cAAc,IAAI,mBAAmB,EAAE,CAKtC;YAIa,eAAe;YAqBf,KAAK;IA2BnB,wEAAwE;YAC1D,gBAAgB;IAyB9B,wFAAwF;YAC1E,cAAc;IAa5B;;;;OAIG;YACW,uBAAuB;IAwCrC,0FAA0F;YAC5E,aAAa;IAwB3B,0EAA0E;YAC5D,QAAQ;CAevB"}
1
+ {"version":3,"file":"KubernetesEnvironmentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/kubernetes/KubernetesEnvironmentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EAEpB,gCAAgC,EAChC,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAG1B,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EAIvB,MAAM,qBAAqB,CAAA;AA4C5B,MAAM,WAAW,oCAAoC;IACnD,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,6BAA8B,YAAW,mBAAmB;IAE3D,OAAO,CAAC,QAAQ,CAAC,OAAO;IAApC,YAA6B,OAAO,GAAE,oCAAyC,EAAI;IAEnF;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,wBAAwB,CAGhD;IAEK,SAAS,CAAC,GAAG,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAqCjF;IAEK,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwB3E;IAEK,QAAQ,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC,CAkBtF;IAEK,cAAc,CAAC,GAAG,EAAE,gCAAgC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAqBzF;IAED,cAAc,IAAI,mBAAmB,EAAE,CAKtC;IAID;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA2BzB,uEAAuE;IACvE,OAAO,CAAC,iBAAiB;IAQzB,0FAA0F;IAC1F,OAAO,CAAC,aAAa;YASP,eAAe;YAqBf,KAAK;IA2BnB,wEAAwE;YAC1D,gBAAgB;IAyB9B,uFAAuF;YACzE,cAAc;IAa5B;;;;;;;OAOG;YACW,cAAc;IA0C5B;;;OAGG;YACW,eAAe;IAY7B;;;;OAIG;YACW,iBAAiB;IAkC/B,yFAAyF;YAC3E,UAAU;IAwBxB,0FAA0F;YAC5E,aAAa;IAwB3B,0EAA0E;YAC5D,QAAQ;CAevB"}