typekro 0.24.1 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/core/composition/context.d.ts +4 -0
- package/dist/core/composition/context.d.ts.map +1 -1
- package/dist/core/composition/context.js +1 -0
- package/dist/core/composition/context.js.map +1 -1
- package/dist/core/composition/imperative.d.ts.map +1 -1
- package/dist/core/composition/imperative.js +24 -3
- package/dist/core/composition/imperative.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts +2 -0
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +47 -11
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/deployment/kro-instance-safety.d.ts +24 -0
- package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -0
- package/dist/core/deployment/kro-instance-safety.js +157 -0
- package/dist/core/deployment/kro-instance-safety.js.map +1 -0
- package/dist/core/deployment/readiness-waiter.d.ts.map +1 -1
- package/dist/core/deployment/readiness-waiter.js +11 -0
- package/dist/core/deployment/readiness-waiter.js.map +1 -1
- package/dist/core/deployment/schema-cel-evaluator.d.ts +5 -0
- package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -0
- package/dist/core/deployment/schema-cel-evaluator.js +36 -0
- package/dist/core/deployment/schema-cel-evaluator.js.map +1 -0
- package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
- package/dist/core/deployment/singleton-gitops.js +9 -2
- package/dist/core/deployment/singleton-gitops.js.map +1 -1
- package/dist/core/serialization/core.d.ts.map +1 -1
- package/dist/core/serialization/core.js +17 -4
- package/dist/core/serialization/core.js.map +1 -1
- package/dist/core/serialization/schema.d.ts.map +1 -1
- package/dist/core/serialization/schema.js +19 -4
- package/dist/core/serialization/schema.js.map +1 -1
- package/dist/core/serialization/yaml.d.ts.map +1 -1
- package/dist/core/serialization/yaml.js +15 -1
- package/dist/core/serialization/yaml.js.map +1 -1
- package/dist/core/types/kubernetes.d.ts +9 -0
- package/dist/core/types/kubernetes.d.ts.map +1 -1
- package/dist/core/types/serialization.d.ts +9 -0
- package/dist/core/types/serialization.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +1 -1
- package/dist/factories/clickhouse/index.d.ts +4 -1
- package/dist/factories/clickhouse/index.d.ts.map +1 -1
- package/dist/factories/clickhouse/index.js +4 -1
- package/dist/factories/clickhouse/index.js.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.js +1 -1
- package/dist/factories/clickstack/index.d.ts +1 -1
- package/dist/factories/clickstack/index.js +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +1 -1
- package/dist/factories/cnpg/index.d.ts +1 -1
- package/dist/factories/cnpg/index.js +1 -1
- package/dist/factories/dagster/index.d.ts +1 -1
- package/dist/factories/dagster/index.js +1 -1
- package/dist/factories/index.d.ts +1 -0
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/factories/index.js +4 -0
- package/dist/factories/index.js.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.js +1 -1
- package/dist/factories/inngest/index.d.ts +1 -1
- package/dist/factories/inngest/index.js +1 -1
- package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
- package/dist/factories/kro/resource-graph-definition.js +17 -1
- package/dist/factories/kro/resource-graph-definition.js.map +1 -1
- package/dist/factories/ory/compositions/ory-identity-stack.d.ts +1 -1
- package/dist/factories/ory/types.d.ts +2 -2
- package/dist/factories/rook/compositions/index.d.ts +4 -0
- package/dist/factories/rook/compositions/index.d.ts.map +1 -0
- package/dist/factories/rook/compositions/index.js +4 -0
- package/dist/factories/rook/compositions/index.js.map +1 -0
- package/dist/factories/rook/compositions/object-storage-claim.d.ts +32 -0
- package/dist/factories/rook/compositions/object-storage-claim.d.ts.map +1 -0
- package/dist/factories/rook/compositions/object-storage-claim.js +63 -0
- package/dist/factories/rook/compositions/object-storage-claim.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts +12 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.js +25 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts +2 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js +2 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +67 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +71 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -0
- package/dist/factories/rook/index.d.ts +15 -0
- package/dist/factories/rook/index.d.ts.map +1 -0
- package/dist/factories/rook/index.js +15 -0
- package/dist/factories/rook/index.js.map +1 -0
- package/dist/factories/rook/resources/bucket-storage-class.d.ts +12 -0
- package/dist/factories/rook/resources/bucket-storage-class.d.ts.map +1 -0
- package/dist/factories/rook/resources/bucket-storage-class.js +29 -0
- package/dist/factories/rook/resources/bucket-storage-class.js.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store-user.d.ts +14 -0
- package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store-user.js +42 -0
- package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store.d.ts +27 -0
- package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store.js +56 -0
- package/dist/factories/rook/resources/ceph-object-store.js.map +1 -0
- package/dist/factories/rook/resources/helm.d.ts +18 -0
- package/dist/factories/rook/resources/helm.d.ts.map +1 -0
- package/dist/factories/rook/resources/helm.js +45 -0
- package/dist/factories/rook/resources/helm.js.map +1 -0
- package/dist/factories/rook/resources/index.d.ts +6 -0
- package/dist/factories/rook/resources/index.d.ts.map +1 -0
- package/dist/factories/rook/resources/index.js +6 -0
- package/dist/factories/rook/resources/index.js.map +1 -0
- package/dist/factories/rook/resources/object-bucket-claim.d.ts +15 -0
- package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -0
- package/dist/factories/rook/resources/object-bucket-claim.js +52 -0
- package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -0
- package/dist/factories/rook/types.d.ts +307 -0
- package/dist/factories/rook/types.d.ts.map +1 -0
- package/dist/factories/rook/types.js +239 -0
- package/dist/factories/rook/types.js.map +1 -0
- package/dist/factories/rook/utils/helm-values-mapper.d.ts +33 -0
- package/dist/factories/rook/utils/helm-values-mapper.d.ts.map +1 -0
- package/dist/factories/rook/utils/helm-values-mapper.js +60 -0
- package/dist/factories/rook/utils/helm-values-mapper.js.map +1 -0
- package/dist/factories/rook/utils/index.d.ts +2 -0
- package/dist/factories/rook/utils/index.d.ts.map +1 -0
- package/dist/factories/rook/utils/index.js +2 -0
- package/dist/factories/rook/utils/index.js.map +1 -0
- package/dist/factories/valkey/compositions/index.d.ts +2 -1
- package/dist/factories/valkey/compositions/index.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/index.js +2 -1
- package/dist/factories/valkey/compositions/index.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +21 -2
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.js +26 -136
- package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts +16 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts.map +1 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.js +29 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.js.map +1 -0
- package/dist/factories/valkey/index.d.ts +6 -3
- package/dist/factories/valkey/index.d.ts.map +1 -1
- package/dist/factories/valkey/index.js +6 -3
- package/dist/factories/valkey/index.js.map +1 -1
- package/dist/factories/valkey/resources/helm.d.ts.map +1 -1
- package/dist/factories/valkey/resources/helm.js +13 -11
- package/dist/factories/valkey/resources/helm.js.map +1 -1
- package/dist/factories/valkey/types.d.ts +29 -16
- package/dist/factories/valkey/types.d.ts.map +1 -1
- package/dist/factories/valkey/types.js +34 -22
- package/dist/factories/valkey/types.js.map +1 -1
- package/dist/factories/valkey/utils/helm-values-mapper.d.ts +6 -1
- package/dist/factories/valkey/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/valkey/utils/helm-values-mapper.js +52 -19
- package/dist/factories/valkey/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/webapp/compositions/index.d.ts +1 -1
- package/dist/factories/webapp/compositions/index.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/index.js +1 -1
- package/dist/factories/webapp/compositions/index.js.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +9 -13
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.js +290 -278
- package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
- package/dist/factories/webapp/types.d.ts +26 -7
- package/dist/factories/webapp/types.d.ts.map +1 -1
- package/dist/factories/webapp/types.js +0 -9
- package/dist/factories/webapp/types.js.map +1 -1
- package/package.json +5 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @see https://github.com/hyperspike/valkey-operator
|
|
10
10
|
* @see https://doc.crds.dev/github.com/hyperspike/valkey-operator
|
|
11
11
|
*/
|
|
12
|
-
import type {
|
|
12
|
+
import type { TypeKroChartValue } from '../../core/types/common.js';
|
|
13
13
|
/**
|
|
14
14
|
* ArkType schema for the Valkey operator bootstrap configuration.
|
|
15
15
|
*
|
|
@@ -20,8 +20,11 @@ export declare const ValkeyBootstrapConfigSchema: import("arktype/internal/varia
|
|
|
20
20
|
name: string;
|
|
21
21
|
namespace?: string;
|
|
22
22
|
version?: string;
|
|
23
|
+
repositoryName?: string;
|
|
24
|
+
repositoryNamespace?: string;
|
|
25
|
+
repositoryUrl?: string;
|
|
26
|
+
values?: Record<string, unknown>;
|
|
23
27
|
customValues?: Record<string, unknown>;
|
|
24
|
-
shared?: boolean;
|
|
25
28
|
}, {}>;
|
|
26
29
|
/** Configuration for installing the Hyperspike Valkey operator via Helm. */
|
|
27
30
|
export type ValkeyBootstrapConfig = typeof ValkeyBootstrapConfigSchema.infer;
|
|
@@ -47,19 +50,20 @@ export declare const ValkeyConfigSchema: import("arktype/internal/variants/objec
|
|
|
47
50
|
servicePassword?: {
|
|
48
51
|
name: string;
|
|
49
52
|
key: string;
|
|
53
|
+
optional?: boolean;
|
|
50
54
|
};
|
|
51
55
|
tls?: boolean;
|
|
52
56
|
certIssuer?: string;
|
|
53
|
-
certIssuerType?:
|
|
57
|
+
certIssuerType?: "Issuer" | "ClusterIssuer";
|
|
54
58
|
storage?: {
|
|
55
|
-
spec
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
requests?: {
|
|
60
|
-
storage?: string;
|
|
59
|
+
spec: {
|
|
60
|
+
resources: {
|
|
61
|
+
requests: {
|
|
62
|
+
storage: string;
|
|
61
63
|
};
|
|
62
64
|
};
|
|
65
|
+
accessModes?: string[];
|
|
66
|
+
storageClassName?: string;
|
|
63
67
|
};
|
|
64
68
|
};
|
|
65
69
|
volumePermissions?: boolean;
|
|
@@ -73,14 +77,13 @@ export declare const ValkeyConfigSchema: import("arktype/internal/variants/objec
|
|
|
73
77
|
memory?: string;
|
|
74
78
|
};
|
|
75
79
|
};
|
|
76
|
-
platformManagedSecurityContext?: boolean;
|
|
77
80
|
clusterPreferredEndpointType?: "ip" | "hostname" | "unknown-endpoint";
|
|
78
81
|
externalAccess?: {
|
|
79
82
|
enabled?: boolean;
|
|
80
83
|
type?: "Proxy" | "LoadBalancer";
|
|
81
84
|
externalDNS?: boolean;
|
|
82
85
|
certIssuer?: string;
|
|
83
|
-
certIssuerType?:
|
|
86
|
+
certIssuerType?: "Issuer" | "ClusterIssuer";
|
|
84
87
|
proxy?: {
|
|
85
88
|
image?: string;
|
|
86
89
|
replicas?: number;
|
|
@@ -126,6 +129,7 @@ export interface ValkeyCondition {
|
|
|
126
129
|
reason: string;
|
|
127
130
|
message: string;
|
|
128
131
|
lastTransitionTime: string;
|
|
132
|
+
observedGeneration?: number;
|
|
129
133
|
}
|
|
130
134
|
/**
|
|
131
135
|
* Observed status of a Valkey cluster.
|
|
@@ -133,8 +137,6 @@ export interface ValkeyCondition {
|
|
|
133
137
|
export interface ValkeyStatus {
|
|
134
138
|
/** Whether the cluster is operational. */
|
|
135
139
|
ready?: boolean;
|
|
136
|
-
/** Cluster service hostname (derived from resource name). */
|
|
137
|
-
hostname?: string;
|
|
138
140
|
/** Status conditions. */
|
|
139
141
|
conditions?: ValkeyCondition[];
|
|
140
142
|
}
|
|
@@ -152,7 +154,7 @@ export interface ValkeyBootstrapStatus {
|
|
|
152
154
|
ready: boolean;
|
|
153
155
|
/** Whether the HelmRelease Ready condition is explicitly False. */
|
|
154
156
|
failed: boolean;
|
|
155
|
-
/**
|
|
157
|
+
/** Deployment-time version (the built-in default is normalized to the app version). */
|
|
156
158
|
version?: string;
|
|
157
159
|
}
|
|
158
160
|
/** ArkType schema for ValkeyBootstrapStatus. */
|
|
@@ -162,12 +164,21 @@ export declare const ValkeyBootstrapStatusSchema: import("arktype/internal/varia
|
|
|
162
164
|
failed: boolean;
|
|
163
165
|
version?: string;
|
|
164
166
|
}, {}>;
|
|
167
|
+
/** Spec accepted by the shared Valkey HelmRepository singleton. */
|
|
168
|
+
export declare const ValkeyHelmRepositorySingletonSpecSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
169
|
+
name: string;
|
|
170
|
+
namespace: string;
|
|
171
|
+
url: string;
|
|
172
|
+
}, {}>;
|
|
173
|
+
/** Status surfaced by the shared Valkey HelmRepository singleton. */
|
|
174
|
+
export declare const ValkeyHelmRepositorySingletonStatusSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
175
|
+
ready: boolean;
|
|
176
|
+
}, {}>;
|
|
165
177
|
/** ArkType schema for the Valkey operator Helm chart repository configuration. */
|
|
166
178
|
export declare const ValkeyHelmRepositoryConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
167
179
|
name?: string;
|
|
168
180
|
namespace?: string;
|
|
169
181
|
url?: string;
|
|
170
|
-
type?: "default" | "oci";
|
|
171
182
|
interval?: string;
|
|
172
183
|
id?: string;
|
|
173
184
|
}, {}>;
|
|
@@ -180,11 +191,13 @@ export declare const ValkeyHelmReleaseConfigSchema: import("arktype/internal/var
|
|
|
180
191
|
version?: string;
|
|
181
192
|
values?: Record<string, unknown>;
|
|
182
193
|
repositoryName?: string;
|
|
194
|
+
repositoryNamespace?: string;
|
|
195
|
+
repositoryUrl?: string;
|
|
183
196
|
id?: string;
|
|
184
197
|
}, {}>;
|
|
185
198
|
/** Configuration for the Valkey operator Helm release. */
|
|
186
199
|
export type ValkeyHelmReleaseConfig = Omit<typeof ValkeyHelmReleaseConfigSchema.infer, 'values'> & {
|
|
187
200
|
/** Graph-aware Helm values serialized recursively by TypeKro. */
|
|
188
|
-
values?:
|
|
201
|
+
values?: TypeKroChartValue<Record<string, unknown>>;
|
|
189
202
|
};
|
|
190
203
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/factories/valkey/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/factories/valkey/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAyBpE;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;MAiBtC,CAAC;AAEH,4EAA4E;AAC5E,MAAM,MAAM,qBAAqB,GAAG,OAAO,2BAA2B,CAAC,KAAK,CAAC;AAM7E;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6G7B,CAAC;AAEH,qDAAqD;AACrD,MAAM,MAAM,YAAY,GAAG,OAAO,kBAAkB,CAAC,KAAK,CAAC;AAM3D,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,yBAAyB;IACzB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,KAAK,EAAE,OAAO,GAAG,YAAY,CAAC;IAC9B,+DAA+D;IAC/D,KAAK,EAAE,OAAO,CAAC;IACf,mEAAmE;IACnE,MAAM,EAAE,OAAO,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gDAAgD;AAChD,eAAO,MAAM,2BAA2B;;;;;MAKtC,CAAC;AAMH,mEAAmE;AACnE,eAAO,MAAM,uCAAuC;;;;MAIlD,CAAC;AAEH,qEAAqE;AACrE,eAAO,MAAM,yCAAyC;;MAEpD,CAAC;AAMH,kFAAkF;AAClF,eAAO,MAAM,gCAAgC;;;;;;MAW3C,CAAC;AAEH,mEAAmE;AACnE,MAAM,MAAM,0BAA0B,GAAG,OAAO,gCAAgC,CAAC,KAAK,CAAC;AAEvF,yEAAyE;AACzE,eAAO,MAAM,6BAA6B;;;;;;;;;MAexC,CAAC;AAEH,0DAA0D;AAC1D,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,OAAO,6BAA6B,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG;IACjG,iEAAiE;IACjE,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACrD,CAAC"}
|
|
@@ -42,18 +42,16 @@ export const ValkeyBootstrapConfigSchema = type({
|
|
|
42
42
|
'namespace?': 'string',
|
|
43
43
|
/** Chart version. */
|
|
44
44
|
'version?': 'string',
|
|
45
|
-
/**
|
|
45
|
+
/** HelmRepository name (default: 'valkey-operator-repo'). */
|
|
46
|
+
'repositoryName?': 'string',
|
|
47
|
+
/** HelmRepository namespace (default: the operator namespace). */
|
|
48
|
+
'repositoryNamespace?': 'string',
|
|
49
|
+
/** OCI repository URL. */
|
|
50
|
+
'repositoryUrl?': 'string',
|
|
51
|
+
/** Raw Helm values merged last (preferred passthrough API). */
|
|
52
|
+
'values?': 'Record<string, unknown>',
|
|
53
|
+
/** @deprecated Use `values` instead. */
|
|
46
54
|
'customValues?': 'Record<string, unknown>',
|
|
47
|
-
/**
|
|
48
|
-
* Whether the operator install should be treated as shared cluster
|
|
49
|
-
* infrastructure (default: `true`). When `true`, the Namespace,
|
|
50
|
-
* HelmRepository, and HelmRelease are tagged with
|
|
51
|
-
* `scopes: ['cluster']` so `factory.deleteInstance()` will NOT
|
|
52
|
-
* remove them — multiple consumers can converge on the same
|
|
53
|
-
* operator install. Set to `false` for dedicated per-instance
|
|
54
|
-
* operators.
|
|
55
|
-
*/
|
|
56
|
-
'shared?': 'boolean',
|
|
57
55
|
});
|
|
58
56
|
// ============================================================================
|
|
59
57
|
// Valkey CRD Resource
|
|
@@ -84,7 +82,10 @@ export const ValkeyConfigSchema = type({
|
|
|
84
82
|
'exporterImage?': 'string',
|
|
85
83
|
/** Number of primary nodes/shards (default: 3). */
|
|
86
84
|
'shards?': 'number',
|
|
87
|
-
/**
|
|
85
|
+
/**
|
|
86
|
+
* Requested replicas per shard (default: 0). Hyperspike v0.0.61 currently
|
|
87
|
+
* creates additional primaries; see upstream issue #186.
|
|
88
|
+
*/
|
|
88
89
|
'replicas?': 'number',
|
|
89
90
|
/** Cluster domain (default: 'cluster.local'). */
|
|
90
91
|
'clusterDomain?': 'string',
|
|
@@ -92,25 +93,25 @@ export const ValkeyConfigSchema = type({
|
|
|
92
93
|
/** Allow connections without authentication (default: false). */
|
|
93
94
|
'anonymousAuth?': 'boolean',
|
|
94
95
|
/** Reference to an existing password secret (*corev1.SecretKeySelector). */
|
|
95
|
-
'servicePassword?': { name: 'string', key: 'string' },
|
|
96
|
+
'servicePassword?': { name: 'string', key: 'string', 'optional?': 'boolean' },
|
|
96
97
|
// TLS
|
|
97
98
|
/** Enable TLS encryption (default: false). */
|
|
98
99
|
'tls?': 'boolean',
|
|
99
100
|
/** Certificate issuer name (requires cert-manager). */
|
|
100
101
|
'certIssuer?': 'string',
|
|
101
102
|
/** Certificate issuer type: 'ClusterIssuer' or 'Issuer' (default: 'ClusterIssuer'). */
|
|
102
|
-
'certIssuerType?': '
|
|
103
|
+
'certIssuerType?': '"ClusterIssuer" | "Issuer"',
|
|
103
104
|
// Storage & Resources
|
|
104
105
|
/** Persistent storage configuration (*corev1.PersistentVolumeClaim). */
|
|
105
106
|
'storage?': {
|
|
106
|
-
|
|
107
|
+
spec: {
|
|
107
108
|
/** PVC access modes (default: ['ReadWriteOnce']). */
|
|
108
109
|
'accessModes?': 'string[]',
|
|
109
110
|
/** Storage class name. */
|
|
110
111
|
'storageClassName?': 'string',
|
|
111
112
|
/** Storage resource requests. */
|
|
112
|
-
|
|
113
|
-
|
|
113
|
+
resources: {
|
|
114
|
+
requests: { storage: 'string' },
|
|
114
115
|
},
|
|
115
116
|
},
|
|
116
117
|
},
|
|
@@ -118,8 +119,6 @@ export const ValkeyConfigSchema = type({
|
|
|
118
119
|
'volumePermissions?': 'boolean',
|
|
119
120
|
/** Pod resource requirements (*corev1.ResourceRequirements). */
|
|
120
121
|
'resources?': resourceRequirementsSchemaShape,
|
|
121
|
-
/** Platform-managed security context (default: false). */
|
|
122
|
-
'platformManagedSecurityContext?': 'boolean',
|
|
123
122
|
// Networking
|
|
124
123
|
/** Preferred endpoint type for cluster communication. */
|
|
125
124
|
'clusterPreferredEndpointType?': '"ip" | "hostname" | "unknown-endpoint"',
|
|
@@ -135,7 +134,7 @@ export const ValkeyConfigSchema = type({
|
|
|
135
134
|
/** TLS certificate issuer name. */
|
|
136
135
|
'certIssuer?': 'string',
|
|
137
136
|
/** Certificate issuer type (default: 'ClusterIssuer'). */
|
|
138
|
-
'certIssuerType?': '
|
|
137
|
+
'certIssuerType?': '"ClusterIssuer" | "Issuer"',
|
|
139
138
|
/** Envoy proxy settings (when type is 'Proxy'). */
|
|
140
139
|
'proxy?': {
|
|
141
140
|
/** Envoy proxy image (default: 'envoyproxy/envoy:v1.32.1'). */
|
|
@@ -179,6 +178,19 @@ export const ValkeyBootstrapStatusSchema = type({
|
|
|
179
178
|
'version?': 'string',
|
|
180
179
|
});
|
|
181
180
|
// ============================================================================
|
|
181
|
+
// Shared HelmRepository Singleton
|
|
182
|
+
// ============================================================================
|
|
183
|
+
/** Spec accepted by the shared Valkey HelmRepository singleton. */
|
|
184
|
+
export const ValkeyHelmRepositorySingletonSpecSchema = type({
|
|
185
|
+
name: 'string',
|
|
186
|
+
namespace: 'string',
|
|
187
|
+
url: 'string',
|
|
188
|
+
});
|
|
189
|
+
/** Status surfaced by the shared Valkey HelmRepository singleton. */
|
|
190
|
+
export const ValkeyHelmRepositorySingletonStatusSchema = type({
|
|
191
|
+
ready: 'boolean',
|
|
192
|
+
});
|
|
193
|
+
// ============================================================================
|
|
182
194
|
// Helm Integration
|
|
183
195
|
// ============================================================================
|
|
184
196
|
/** ArkType schema for the Valkey operator Helm chart repository configuration. */
|
|
@@ -189,8 +201,6 @@ export const ValkeyHelmRepositoryConfigSchema = type({
|
|
|
189
201
|
'namespace?': 'string',
|
|
190
202
|
/** OCI registry URL (default: 'oci://ghcr.io/hyperspike'). */
|
|
191
203
|
'url?': 'string',
|
|
192
|
-
/** Repository type (default: 'oci' — Hyperspike uses OCI registry). */
|
|
193
|
-
'type?': '"default" | "oci"',
|
|
194
204
|
/** Sync interval (default: '5m'). */
|
|
195
205
|
'interval?': 'string',
|
|
196
206
|
/** Resource ID for composition references. */
|
|
@@ -208,6 +218,8 @@ export const ValkeyHelmReleaseConfigSchema = type({
|
|
|
208
218
|
'values?': 'Record<string, unknown>',
|
|
209
219
|
/** HelmRepository name to reference (default: 'valkey-operator-repo'). */
|
|
210
220
|
'repositoryName?': 'string',
|
|
221
|
+
'repositoryNamespace?': 'string',
|
|
222
|
+
'repositoryUrl?': 'string',
|
|
211
223
|
/** Resource ID for composition references. */
|
|
212
224
|
'id?': 'string',
|
|
213
225
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/factories/valkey/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAG/B,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,8DAA8D;AAC9D,MAAM,qBAAqB,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,oBAAoB;IACjC,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,iDAAiD;IAC5D,oBAAoB,EAAE,QAAQ;CACtB,CAAC;AAEX,iEAAiE;AACjE,MAAM,+BAA+B,GAAG;IACtC,WAAW,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;IACtD,SAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;CAC5C,CAAC;AAEX,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;IAC9C,8CAA8C;IAC9C,IAAI,EAAE,QAAQ;IACd,sEAAsE;IACtE,YAAY,EAAE,QAAQ;IACtB,qBAAqB;IACrB,UAAU,EAAE,QAAQ;IACpB,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/factories/valkey/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,16 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @see https://github.com/hyperspike/valkey-operator
|
|
8
8
|
*/
|
|
9
|
+
import { type ValuesMergeExpression } from '../../../core/aspects/values-merge.js';
|
|
9
10
|
import type { ValkeyBootstrapConfig } from '../types.js';
|
|
10
11
|
/** Helm values structure for the valkey-operator chart. */
|
|
11
12
|
export interface ValkeyHelmValues {
|
|
12
13
|
[key: string]: unknown;
|
|
13
14
|
}
|
|
15
|
+
/** Plain values or a KRO runtime merge preserving graph-aware passthrough maps. */
|
|
16
|
+
export type ValkeyMappedHelmValues = ValkeyHelmValues | ValuesMergeExpression;
|
|
17
|
+
/** Proxy-safe subset consumed by the Helm values mapper. */
|
|
18
|
+
export type ValkeyHelmValuesInput = Partial<ValkeyBootstrapConfig>;
|
|
14
19
|
/**
|
|
15
20
|
* Map ValkeyBootstrapConfig to Helm chart values.
|
|
16
21
|
*
|
|
@@ -21,7 +26,7 @@ export interface ValkeyHelmValues {
|
|
|
21
26
|
* @param config - Resolved Valkey bootstrap configuration
|
|
22
27
|
* @returns Helm values object compatible with the valkey-operator chart
|
|
23
28
|
*/
|
|
24
|
-
export declare function mapValkeyConfigToHelmValues(config:
|
|
29
|
+
export declare function mapValkeyConfigToHelmValues(config: ValkeyHelmValuesInput): ValkeyMappedHelmValues;
|
|
25
30
|
/**
|
|
26
31
|
* Get advisory warnings for Valkey operator Helm values configuration.
|
|
27
32
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helm-values-mapper.d.ts","sourceRoot":"","sources":["../../../../src/factories/valkey/utils/helm-values-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,qBAAqB,GAAG,
|
|
1
|
+
{"version":3,"file":"helm-values-mapper.d.ts","sourceRoot":"","sources":["../../../../src/factories/valkey/utils/helm-values-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,mFAAmF;AACnF,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,qBAAqB,CAAC;AAE9E,4DAA4D;AAC5D,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAEnE;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,qBAAqB,GAAG,sBAAsB,CAQjG;AA8DD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,EAAE,CAInF"}
|
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @see https://github.com/hyperspike/valkey-operator
|
|
8
8
|
*/
|
|
9
|
+
import { isValuesMergeExpression, mergeValuesExpression, } from '../../../core/aspects/values-merge.js';
|
|
10
|
+
import { isCelExpression, isKubernetesRef } from '../../../utils/type-guards.js';
|
|
9
11
|
/**
|
|
10
12
|
* Map ValkeyBootstrapConfig to Helm chart values.
|
|
11
13
|
*
|
|
@@ -17,32 +19,63 @@
|
|
|
17
19
|
* @returns Helm values object compatible with the valkey-operator chart
|
|
18
20
|
*/
|
|
19
21
|
export function mapValkeyConfigToHelmValues(config) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
let mapped = {};
|
|
23
|
+
// Preserve the legacy alias first, then let the standard `values` API win.
|
|
24
|
+
mapped = mergeOverride(mapped, config.customValues);
|
|
25
|
+
mapped = mergeOverride(mapped, config.values);
|
|
26
|
+
return mapped;
|
|
27
|
+
}
|
|
28
|
+
function mergeOverride(base, override) {
|
|
29
|
+
if (override === undefined)
|
|
30
|
+
return base;
|
|
31
|
+
if (isKubernetesRef(override) || isCelExpression(override) || isValuesMergeExpression(override)) {
|
|
32
|
+
return mergeValuesExpression(base, override);
|
|
23
33
|
}
|
|
24
|
-
|
|
34
|
+
if (isPlainObject(override)) {
|
|
35
|
+
const safeOverride = deepClone(override);
|
|
36
|
+
if (isValuesMergeExpression(base)) {
|
|
37
|
+
return mergeValuesExpression(base, safeOverride);
|
|
38
|
+
}
|
|
39
|
+
if (isPlainObject(base)) {
|
|
40
|
+
return deepMerge(deepClone(base), safeOverride);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return base;
|
|
25
44
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
45
|
+
function isPlainObject(value) {
|
|
46
|
+
return (value !== null &&
|
|
47
|
+
typeof value === 'object' &&
|
|
48
|
+
!Array.isArray(value) &&
|
|
49
|
+
!isKubernetesRef(value) &&
|
|
50
|
+
!isCelExpression(value) &&
|
|
51
|
+
!isValuesMergeExpression(value));
|
|
52
|
+
}
|
|
53
|
+
/** Deep merge plain objects; arrays and primitives replace, and dangerous keys are ignored. */
|
|
54
|
+
function deepMerge(target, source) {
|
|
55
|
+
for (const [key, sourceValue] of Object.entries(source)) {
|
|
56
|
+
if (key === '__proto__' || key === 'constructor' || key === 'prototype')
|
|
57
|
+
continue;
|
|
58
|
+
if (sourceValue === undefined)
|
|
34
59
|
continue;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
result[key] = cleaned;
|
|
39
|
-
}
|
|
60
|
+
const targetValue = target[key];
|
|
61
|
+
if (isPlainObject(targetValue) && isPlainObject(sourceValue)) {
|
|
62
|
+
deepMerge(targetValue, sourceValue);
|
|
40
63
|
}
|
|
41
64
|
else {
|
|
42
|
-
|
|
65
|
+
target[key] = deepCloneValue(sourceValue);
|
|
43
66
|
}
|
|
44
67
|
}
|
|
45
|
-
return
|
|
68
|
+
return target;
|
|
69
|
+
}
|
|
70
|
+
function deepClone(source) {
|
|
71
|
+
return deepMerge({}, source);
|
|
72
|
+
}
|
|
73
|
+
function deepCloneValue(value) {
|
|
74
|
+
if (Array.isArray(value))
|
|
75
|
+
return value.map(deepCloneValue);
|
|
76
|
+
if (isPlainObject(value))
|
|
77
|
+
return deepClone(value);
|
|
78
|
+
return value;
|
|
46
79
|
}
|
|
47
80
|
/**
|
|
48
81
|
* Get advisory warnings for Valkey operator Helm values configuration.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helm-values-mapper.js","sourceRoot":"","sources":["../../../../src/factories/valkey/utils/helm-values-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"helm-values-mapper.js","sourceRoot":"","sources":["../../../../src/factories/valkey/utils/helm-values-mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { webAppWithProcessing } from './web-app-with-processing.js';
|
|
1
|
+
export { makeWebAppWithProcessing, webAppWithProcessing, } from './web-app-with-processing.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { webAppWithProcessing } from './web-app-with-processing.js';
|
|
1
|
+
export { makeWebAppWithProcessing, webAppWithProcessing, } from './web-app-with-processing.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { type WebAppWithProcessingConfig, type WebAppWithProcessingBuildOptions, type WebAppWithProcessingStatus } from '../types.js';
|
|
2
|
+
import type { CallableComposition } from '../../../core/types/deployment.js';
|
|
1
3
|
/**
|
|
2
4
|
* Full-Stack Web Application with Background Processing
|
|
3
5
|
*
|
|
@@ -35,11 +37,10 @@
|
|
|
35
37
|
* - Inngest references `database.status.writeService` for the postgres URI → deploys after CNPG
|
|
36
38
|
* - App references service names derived from resource names → deploys after all infra
|
|
37
39
|
*
|
|
38
|
-
*
|
|
39
|
-
* `spec.cnpgOperator
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* system namespace.
|
|
40
|
+
* CNPG operator install settings can be overridden per deployment via
|
|
41
|
+
* `spec.cnpgOperator`. Valkey settings are graph-authoring-time options on
|
|
42
|
+
* `makeWebAppWithProcessing(...)` because singleton ownership cannot safely
|
|
43
|
+
* depend on a per-instance KRO schema value.
|
|
43
44
|
*
|
|
44
45
|
* @example
|
|
45
46
|
* ```typescript
|
|
@@ -79,7 +80,9 @@
|
|
|
79
80
|
* });
|
|
80
81
|
* ```
|
|
81
82
|
*/
|
|
82
|
-
export declare
|
|
83
|
+
export declare function makeWebAppWithProcessing(options?: WebAppWithProcessingBuildOptions): CallableComposition<WebAppWithProcessingConfig, WebAppWithProcessingStatus>;
|
|
84
|
+
/** Default webapp graph with the pinned Valkey operator installation. */
|
|
85
|
+
export declare const webAppWithProcessing: CallableComposition<{
|
|
83
86
|
name: string;
|
|
84
87
|
app: {
|
|
85
88
|
image: string;
|
|
@@ -154,13 +157,6 @@ export declare const webAppWithProcessing: import("../../../index.js").CallableC
|
|
|
154
157
|
customValues?: Record<string, unknown>;
|
|
155
158
|
shared?: boolean;
|
|
156
159
|
};
|
|
157
|
-
valkeyOperator?: {
|
|
158
|
-
name?: string;
|
|
159
|
-
namespace?: string;
|
|
160
|
-
version?: string;
|
|
161
|
-
customValues?: Record<string, unknown>;
|
|
162
|
-
shared?: boolean;
|
|
163
|
-
};
|
|
164
160
|
}, {
|
|
165
161
|
ready: boolean;
|
|
166
162
|
databaseUrl: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-app-with-processing.d.ts","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/web-app-with-processing.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"web-app-with-processing.d.ts","sourceRoot":"","sources":["../../../../src/factories/webapp/compositions/web-app-with-processing.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EAErC,KAAK,0BAA0B,EAEhC,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,gCAAqC,GAC7C,mBAAmB,CAAC,0BAA0B,EAAE,0BAA0B,CAAC,CAyU7E;AAED,yEAAyE;AACzE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA6B,CAAC"}
|